尝试使用资源只打印一次

时间:2018-02-18 00:41:12

标签: java try-catch try-with-resources

我在下面的ArrayList中的pList中有5条记录,但为什么它只打印最后一条记录到文件?

我将try放在第一位,for循环放在其中,但这有效但是试图理解为什么下面的代码没有工作的逻辑?

for(Person p: pList){
    try(PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("persons.txt")))){
        pw.println(p.toString());
    }
    catch(IOException ex){
        System.out.println(ex.getMessage());
    }
}

0 个答案:

没有答案