Java.util.Arrays 类

java.util.Arrays.spliterator() 方法返回覆盖指定数组的指定范围的 Spliterator。

语法

static <T> Spliterator<T> spliterator(T[] array,
                                      int startInclusive,
                                      int endExclusive)

这里,T 是数组中元素的类型。

参数

array 指定数组,假定在使用过程中不被修改。
startInclusive 指定要覆盖的第一个索引(包含)。
endExclusive 指定紧接着要覆盖的最后一个索引之后的索引.

返回值

返回数组元素的分割器。

异常

如果startInclusive为负数、endExclusive小于startInclusive或endExclusive大于数组大小,则抛出ArrayIndexOutOfBoundsException

示例:

在在下面的示例中,java.util.Arrays.spliterator() 方法返回一个 spliterator,其元素位于给定数组对象的指定范围内。

import java.util.*;

public class MyClass {
  public static void main(String[] args) {
    //创建一个Long数组
    Long[] MyArr = {10l, 2l, -3l, 35l, 56l};

    //在数组上创建 spliterator 对象
    Spliterator<Long> splitr = Arrays.spliterator(MyArr, 1, 4); 

    //打印数组的估计大小
    System.out.println("Estimated size: " + splitr.estimateSize());  

    //使用显示数组内容
    //tryAdvance方法
    System.out.print("The Array contains: ");              
    splitr.forEachRemaining((n) -> System.out.print(n + " "));    
  }
}

输出上述代码将是:

Estimated size: 3
The Array contains: 2 -3 35