Module  java.base
软件包  java.util

Interface Spliterator.OfPrimitive<T,T_CONS,T_SPLITR extends Spliterator.OfPrimitive<T,T_CONS,T_SPLITR>>

    • 方法详细信息

      • trySplit

        T_SPLITR trySplit​()
        说明从接口Spliterator复制
        如果此分割器可以被分区,返回一个包含元素的Spliter,当从该方法返回时,它不会被该Spliter所覆盖。

        如果此Spliterator为Spliterator.ORDERED ,则返回的Spliterator必须覆盖元素的严格前缀。

        除非这个Spliterator包含无数个元素,否则重复调用trySplit()必须最终返回null 非空返回:

        • 在分割之前报告的值为estimateSize() ,分割后必须大于或等于estimateSize()为此和返回的Spliterator;
        • 如果这Spliterator是SUBSIZED ,然后estimateSize()这个spliterator分裂之前必须等于总和estimateSize() ,这和拆分后返回Spliterator。

        该方法可能由于任何原因返回null ,包括空虚,遍历开始后无法拆分,数据结构约束和效率考虑。

        Specified by:
        trySplit在接口 Spliterator<T>
        结果
        一个 Spliterator覆盖部分元素,或 null如果这个拼接器不能被拆分
      • tryAdvance

        boolean tryAdvance​(T_CONS action)
        如果存在剩余元素,执行给定的操作,返回true ; 否则返回false 如果此Spliterator是Spliterator.ORDERED ,则会按照遇到的顺序对下一个元素执行操作。 动作抛出的异常被转发给呼叫者。
        参数
        action - 行动
        结果
        false如果在进入此方法时不存在剩余元素,否则为 true
        异常
        NullPointerException - 如果指定的动作为空
      • forEachRemaining

        default void forEachRemaining​(T_CONS action)
        在当前线程中依次执行每个剩余元素的给定操作,直到所有元素都被处理或动作引发异常。 如果这个Spliterator是Spliterator.ORDERED ,则按照遇到的顺序执行操作。 动作抛出的异常被转发给呼叫者。
        实现要求:
        默认实现反复调用tryAdvance(T_CONS)直到它返回false 应尽可能覆盖。
        参数
        action - 行动
        异常
        NullPointerException - if the specified action is null