【发布时间】:2014-06-27 03:55:33
【问题描述】:
我遇到了使用BufferedReader 的lines() 方法计算行号的问题。以下是test.txt文件的内容。
1 Career
2 Filmography
3 Awards
4 References
5 External
这里是计算两次行号的源代码。
BufferedReader br=new BufferedReader(new FileReader(new File("test.txt")));
long lineNo=br.lines().count();
long lineNo2=br.lines().count();
System.out.println(lineNo); // 5
System.out.println(lineNo2);// 0
在这里,我有疑问为什么lineNo2 的第二行打印0 而不是5?提前致谢。
【问题讨论】:
-
作为一般规则,不要期望 Stream 在终端操作后可重用。
标签: java lambda bufferedreader java-8