我如何组合两个班级?

时间:2012-08-03 07:38:34

标签: java arrays string

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

3 个答案:

答案 0 :(得分:1)

欢迎来到SO,

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

  

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

public static void main(String... args) throws IOException {
    List<String> strings1 = readFileAsList("D:\\Denemeler\\file1.txt");
    List<String> strings2 = readFileAsList("D:\\Denemeler\\file2.txt");
    compare(strings1, strings2);
}

private static void compare(List<String> strings1, List<String> strings2) {
    // TODO
}

private static List<String> readFileAsList(String name) throws IOException {
    List<String> ret = new ArrayList<String>();
    BufferedReader br = null;
    try {
        br = new BufferedReader(new FileReader(name));
        String strLine;
        while ((strLine = br.readLine()) != null)
            ret.add(strLine);
        return ret;
    } finally {
        if (br != null) br.close();
    }
}

答案 1 :(得分:0)

您想在一个程序中执行所有这些操作。一个程序只有一个活动方法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(File f)中使用自己的逻辑和comaprison实现方法compare(String[] s1, String[] s2)

答案 2 :(得分:0)

Jes'Peter Lawrey'是对的。

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

如果您想了解内部类,请查看此Java Inner class