T
- 此Spliter的返回元素的类型。
该类型必须是对一个原始类型的包装类型,如Integer
为原始int
类型。
T_CONS
- 原始消费者的类型。
该类型必须是Consumer
(对于T
,例如IntConsumer
对于Integer
。
T_SPLITR
- 原始Spliterator的类型。
该类型必须是T的Spliterator的原始T
,例如Spliterator.OfInt
为Integer
。
public static interface Spliterator.OfPrimitive<T,T_CONS,T_SPLITR extends Spliterator.OfPrimitive<T,T_CONS,T_SPLITR>> extends Spliterator<T>
Spliterator.OfInt
, Spliterator.OfLong
, Spliterator.OfDouble
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 and Type | Method and Description |
---|---|
default void |
forEachRemaining(T_CONS action)
在当前线程中依次执行每个剩余元素的给定操作,直到所有元素都被处理或动作引发异常。
|
boolean |
tryAdvance(T_CONS action)
如果剩下的元素存在,执行给定的操作,返回 true ;
否则返回false 。
|
T_SPLITR |
trySplit()
如果此分割器可以被分区,返回一个包含元素的Spliter,当从该方法返回时,它不会被该Spliter所覆盖。
|
characteristics, estimateSize, forEachRemaining, getComparator, getExactSizeIfKnown, hasCharacteristics, tryAdvance
T_SPLITR trySplit()
Spliterator
复制
如果此Spliterator为Spliterator.ORDERED
,则返回的Spliterator必须覆盖元素的严格前缀。
除非这个Spliterator包含无数个元素,否则重复调用trySplit()
必须最终返回null
。 非空返回:
estimateSize()
分割之前,必须分割后,大于或等于estimateSize()
,这和返回Spliterator; 和 SUBSIZED
,然后estimateSize()
这个spliterator分裂之前必须等于总和estimateSize()
,这和拆分后返回Spliterator。 该方法可能由于任何原因返回null
,包括空虚,遍历开始后无法拆分,数据结构约束和效率考虑。
trySplit
在界面
Spliterator<T>
Spliterator
涵盖部分元素,或
null
如果这个拼接器不能被拆分
boolean tryAdvance(T_CONS action)
true
;
否则返回false
。
如果此Spliterator为Spliterator.ORDERED
,则会按照遇到的顺序对下一个元素执行操作。
动作抛出的异常被转发给呼叫者。
action
- 行动
false
如果在进入此方法时不存在剩余的元素,否则
true
。
NullPointerException
- 如果指定的动作为空
default void forEachRemaining(T_CONS action)
Spliterator.ORDERED
,则按相关顺序执行操作。
动作抛出的异常被转发给呼叫者。
tryAdvance(T_CONS)
,直到它返回false
。
应尽可能覆盖。
action
- 行动
NullPointerException
- if the specified action is null
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.