在文档中说
从文件中读取所有行作为
Stream。
这是否意味着它正在加载整个文件?例如:
try (Stream<String> stream = Files.lines(Paths.get("myfilename.txt"))) {
stream.forEach(x -> {
Run Code Online (Sandbox Code Playgroud)
如果myfilename是100GB,是否会Files.lines加载整个100GB?
好了,您提供的链接已经声明了它:
与readAllLines不同,此方法不会将所有行读取到List中,而是在使用流时延迟填充。
因此,每次for-each调用您的块时,都会读取一个新行。
| 归档时间: |
|
| 查看次数: |
1057 次 |
| 最近记录: |