Spliterator从JDK1.8开始投入使用。Spliterator是用于遍历和区分源元素的对象。Spliterator可以覆盖数组、Collection、IO通道或生成器函数。
Spliterator的常量:
- public static final int ORDERED = 0x00000010; 表示为元素定义遭遇顺序的特征值。trySplit中国年为拆分元素严格前缀。tryAdvance为按前缀顺序逐个元素。forEachRemaining按顺序执行操作。
- public static final int DISTINCT = 0x00000001;表示对于每对遇到的元素。
- public static final int SORTED = 0x00000004;表示遇到订单遵循定义的排序顺序的特征值。getComparator将返回关联的Comparator,如果所有元素都是COmparable,则返回null,并按其自然顺序排序。
- public static final int SIZED = 0x00000040; 表示在遍历或拆分之前从estimateSize()返回的值的特性值表示有限大小,在没有结构源修改的情况下,表示完整遇到的元素数量的精确计数遍历。
- public static final int NONNULL = 0x00000100;表示源保证遇到的元素不会是null。
- public static final int IMMUTABLE = 0x00000400;表示元素源不能进行结构修改的特性值。