java - 哪个集合 - 每个操作的拆分器正在迭代?

标签 java java-8 java-stream spliterator

我试图了解每个操作的拆分器究竟迭代了什么。如果我错了,请纠正我:(我很可能错了)

  1. 每个流都有 .spliterator() 方法。
  2. 每个中间操作都可以改变 split 器的特性。

我的问题:

  1. 每个中间操作是否使用和更改同一拆分器(“源拆分器”)中的特性?
  2. 如果我们使用filter 操作,那么可以省略一些元素。这些元素究竟来自哪个集合?

最佳答案

  1. 是的 - 它是同一个拆分器。仅从 Stream 的源创建一个拆分器(在并行处理的情况下可能有多个拆分器)。

  2. 它是结果集合(来自终端操作的结果 - 可能根本不是集合 - sumcount 等)元素被省略。

关于java - 哪个集合 - 每个操作的拆分器正在迭代?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45734331/

相关文章:

java - 我们可以在不扩展 JPanel 类的情况下使用 Paint Component 吗?

java - java中log4j格式的打印

java - 如何在 Java 中实现谓词,用于根据任意数量的规则交叉检查字符串?

Java 8 lambda 获取和删除列表中的元素

java - 计算 docx 文档中的页数

Java 中的 JavaPOS Hello World

java - 当许多键具有相同的哈希码时,Java 8 的 HashMap 如何退化为平衡树?

Java 8 流 : average and count at once

java - 使用 java 流将两个相同大小(和不同类型)的列表组合成域对象列表

java - GroupingBy 和 List 作为结果