每个和每个流的使用优点和缺点

She*_*ott 2 java java-8 java-stream

从java 8开始迭代通过列表我可以使用两者:

List list = new ArrayList();
1. list.forEach(...)
2. list.stream().forEach(...)
Run Code Online (Sandbox Code Playgroud)

使用第二种情况有什么好处吗?要将列表转换为流?

shm*_*sel 5

除非您有并行流,否则使用第二种情况没有任何优势.有一个缺点,即Stream.forEach()不保证尊重遭遇秩序.更准确(但仍然是不必要的)等价物Stream.forEachOrdered().

  • @tsolakp简而言之,是的.有关详细信息,请参阅此处:/sf/ask/2397312291/ (2认同)
  • @Eugene OP从未提及过这样的用途.至于副作用,我只会引用文档:*少量的流操作,例如`forEach()`和`peek()`,只能通过副作用运行; 这些应该谨慎使用.* (2认同)