public abstract static class Spliterators.AbstractSpliterator<T> extends Object implements Spliterator<T>
使用这个类,也允许有限的并行性,是创建从一个迭代器spliterator(见Spliterators.spliterator(Iterator, long, int)。根据使用迭代器的情况可能会更容易或更比扩展这个类,方便时,已经有一个迭代器的使用。
Spliterators.spliterator(Iterator, long, int)
Spliterator.OfDouble, Spliterator.OfInt, Spliterator.OfLong, Spliterator.OfPrimitive<T,T_CONS,T_SPLITR extends Spliterator.OfPrimitive<T,T_CONS,T_SPLITR>>CONCURRENT, DISTINCT, IMMUTABLE, NONNULL, ORDERED, SIZED, SORTED, SUBSIZED| Modifier | Constructor and Description |
|---|---|
protected |
AbstractSpliterator(long est, int additionalCharacteristics)
创建一个spliterator报告给出的估计的大小和additionalcharacteristics。
|
| Modifier and Type | Method and Description |
|---|---|
int |
characteristics()
返回一组这spliterator及其元素的特征。
|
long |
estimateSize()
返回的元素,将由一个
Spliterator.forEachRemaining(java.util.function.Consumer<? super T>)遍历遇到的估计值,或者返回
Long.MAX_VALUE如果无限的,未知的,或过于昂贵的计算。
|
Spliterator<T> |
trySplit()
如果这spliterator可以分割,返回一个spliterator覆盖的元素,将这一方法,在回归,不是这个spliterator覆盖。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEachRemaining, getComparator, getExactSizeIfKnown, hasCharacteristics, tryAdvanceprotected AbstractSpliterator(long est,
int additionalCharacteristics)
est -估计大小这spliterator如果知道,否则
Long.MAX_VALUE。
additionalCharacteristics -这spliterator源或元素的属性。如果
SIZED报道这spliterator还将报告
SUBSIZED。
public Spliterator<T> trySplit()
如果这spliterator是Spliterator.ORDERED,返回的spliterator必须盖严前缀的元素。
除非这spliterator涵盖无限数量的元素,重复调用trySplit()最终要回归null在非零返回:
estimateSize()分裂之前,必须经过分裂,可大于或等于estimateSize()这和返回的spliterator;和SUBSIZED,然后estimateSize()这spliterator分裂之前必须经过分裂等于这和返回的spliterator estimateSize()总和。这种方法可以返回任何理由,null包括空虚,无力分裂后遍历开始,数据结构约束和效率方面的考虑。此实现允许有限的并行。
trySplit 接口
Spliterator<T>
Spliterator覆盖部分的元素,或
null如果这spliterator无法拆分
public long estimateSize()
Spliterator.forEachRemaining(java.util.function.Consumer<? super T>)遍历遇到的估计值,或者返回
Long.MAX_VALUE如果无限的,未知的,或过于昂贵的计算。
如果这spliterator是Spliterator.SIZED尚未部分遍历或分裂,或这spliterator是Spliterator.SUBSIZED尚未部分走过,这个估计必须的元素,将由一个完全遍历遇到一个准确的计数。否则,这个估计可能是任意的不准确,但必须指定在调用Spliterator.trySplit()减少。
estimateSize 接口
Spliterator<T>
Long.MAX_VALUE如果无限的,未知的,或过于昂贵的计算。
public int characteristics()
Spliterator.ORDERED,
Spliterator.DISTINCT,
Spliterator.SORTED,
Spliterator.SIZED,
Spliterator.NONNULL,
Spliterator.IMMUTABLE,
Spliterator.CONCURRENT,
Spliterator.SUBSIZED。重复调用
characteristics()在给定的spliterator,之前或在电话
trySplit之间,应始终返回相同的结果。
如果一个spliterator报道特点一致(或从一个单一的调用或跨多个调用返回),无法保证任何计算这spliterator。
characteristics 接口
Spliterator<T>
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.