何时使用String和Java中的char数组?

时间:2015-09-15 19:12:00

标签: java arrays bufferedreader

我应该读取每行包含字符串的大文件。在Java中解析这种文件的最佳方法是什么?

目前我正在使用BufferedReader进行解析:

public static List<String> readFile(String filename) {

    List<String> input = new ArrayList<>();
    BufferedReader br = null;

    try {
        String sCurrentLine;
        br = new BufferedReader(new FileReader(filename));

        while ((sCurrentLine = br.readLine()) != null) {
            input.add(sCurrentLine);
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        try {
            if (br != null) br.close();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
    return input;
}

所以我的问题是,哪一个更好的方法:像String数组或char数组一样保存?

换句话说,拥有太多String个对象或太多char数组会更好吗?

编辑: 我需要检查每一行中的字符串是否是回文。

1 个答案:

答案 0 :(得分:0)

在上面的场景中,您可以使用其中任何一个。如果你想进一步改变内容,那么你必须使用char数组,因为String在java中本质上是不可变的。