Spliterator<T> 接口
文档说明 一个用于对一个源当中的元素进行遍历和分区的对象 一个 Spliterator 涵盖的源中的元素可以是数组、Collection、IO通道、生成器函数 一个 Spliterator 可以一个一个地遍历元素(tryAdvance()),也可以顺序地分块遍历(forEachRemaining()) 一个 Spliterator 可以对其元素使用 trySplit 进行分区形成另外的 Spliterator,使用在并行操作中 操作中使用的 Spliterator 但无法进行分割,或者分割结果高度不平衡或低效,则操作不能从并行当中获益 遍历以及分割都会消耗掉元素,每一个 Spliterator 只对其对应的单个块进行运算 一个 Spliterator 还会去报告一个装有其构造、源以及其元素的特性值的集合,特性值有:ORDERED、DISTINCT、SORTED、SIZED、NONNULL、IMMUTABLE、CONCURRENT、SUBSIZED 这些特性可被 Spliterator 的使用者调用,以特化或简化计算 特性值都是通过位操作进行标识的 部分特性值会额外地限定方法的行为 如:ORDER,遍历方法必须遵循它们在文档中定义好的顺序 未来可能还会定义新的特性值,因此实现者不应该给8个特性值以外的词赋予新的含义 当一个 Spliterator 不包含 `IMMUTABLE` 或