Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将两个类合并?_Java_Arrays_String - Fatal编程技术网

Java 如何将两个类合并?

Java 如何将两个类合并?,java,arrays,string,Java,Arrays,String,我有两个.txt文件。首先,我将file1.txt的内容放入字符串数组中。之后,我使用另一个类对另一个文件执行相同的操作:file2.txt。然后,我将两个字符串数组的内容相互比较(特别是字符串数组中的单词)。如何将我的两个类相互结合?欢迎来到SO 混合使用DataInputStream和BufferedReader是没有意义的。一个更简单的模式是执行以下操作 我可以比较两个txt文件的这些内容吗 publicstaticvoidmain(String…args)抛出IOException{ L

我有两个
.txt
文件。首先,我将
file1.txt
的内容放入字符串数组中。之后,我使用另一个类对另一个文件执行相同的操作:
file2.txt
。然后,我将两个字符串数组的内容相互比较(特别是字符串数组中的单词)。如何将我的两个类相互结合?

欢迎来到SO

混合使用DataInputStream和BufferedReader是没有意义的。一个更简单的模式是执行以下操作

我可以比较两个txt文件的这些内容吗

publicstaticvoidmain(String…args)抛出IOException{
List strings1=readFileAsList(“D:\\Denemeler\\file1.txt”);
List strings2=readFileAsList(“D:\\Denemeler\\file2.txt”);
比较(strings1、strings2);
}
私有静态无效比较(列表字符串1、列表字符串2){
//待办事项
}
私有静态列表readFileAsList(字符串名称)引发IOException{
List ret=new ArrayList();
BufferedReader br=null;
试一试{
br=新的BufferedReader(新的文件读取器(名称));
弦斯特林;
而((strLine=br.readLine())!=null)
ret.add(strLine);
返回ret;
}最后{
如果(br!=null)br.close();
}
}

您希望在一个程序中执行所有这些操作。一个程序只有一个活动方法
main
,在启动程序时将执行该方法

  • 将file1.txt读入字符串数组
  • 将file2.txt读入字符串数组
  • 比较结果
您的主要方法如下所示:

public static void main(String[] args) {
   String[] s1 = read("file1.txt");
   String[] s2 = read("file2.txt");
   compare(s1, s2);
}

现在,您用自己的逻辑实现了方法
String[]read(文件f)
,方法
compare(String[]s1,String[]s2)
Jes'Peter Lawrey'是正确的

Java是一个面向对象的程序,我们必须记住这一点。使用通用方法,避免使用一个类


如果您想了解内部类,请看一下这个

为什么是两个不同的类?你可以在同一节课上做这件事。看起来像家庭作业?模块化你的代码,分解成方法。用一个单独的方法编写所有文件读取逻辑,比如说
getContents
,它以文件名为参数,返回
List
,并从
main
方法调用该方法两次。我不能在同一个类中使用两个BufferedReader来读取两个txt文件,所以我使用了另一个类来读取,但我不能将它们中的两个组合起来可以一个接一个地使用两个不同的缓冲区读取器,或者使用一种通用方法Peter,好的,我可以使用processFile,但是我在哪里可以比较两个txt文件的这些内容?我想比较并显示差异,例如,通过编写另一个file3.txt filePeter首先非常感谢,但是如果我想看到file1.txt和file2.txt之间的不同单词,我可以在哪里看到呢。也谢谢你的代码编译
public static void main(String[] args) {
   String[] s1 = read("file1.txt");
   String[] s2 = read("file2.txt");
   compare(s1, s2);
}