java.util.ArrayDeque.spliterator() 方法用于创建一个后期绑定和快速失败的 spliterator双端队列中的元素。
语法
public Spliterator<E> spliterator()
- 1
这里,E 是容器维护的元素类型。
参数
不需要参数。
返回值
返回双端队列中元素的分割器。
异常
不适用。
示例:
在下面的示例中,java.util.ArrayDeque.spliterator() 方法是用于在给定双端队列中的元素上创建拆分器。
import java.util.*;
public class MyClass {
public static void main(String[] args) {
//创建一个ArrayDeque
ArrayDeque<Integer> MyDeque = new ArrayDeque<Integer>();
//填充ArrayDeque
MyDeque.add(10);
MyDeque.add(20);
MyDeque.add(30);
MyDeque.add(40);
MyDeque.add(50);
//在ArrayDeque上创建spliterator对象
Spliterator<Integer> splitr = MyDeque.spliterator();
//显示ArrayDeque的内容
//使用tryAdvance方法
System.out.print("MyDeque contains: ");
while(splitr.tryAdvance((n) -> System.out.print(n + " ")));
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
上述代码的输出将是:
MyDeque contains: 10 20 30 40 50
- 1
示例:
让我们考虑另一个例子来了解给定双端队列中元素的 spliterator 概念。
import java.util.*;
public class MyClass {
public static void main(String[] args) {
//创建一个ArrayDeque
ArrayDeque<Integer> MyDeque = new ArrayDeque<Integer>();
//填充ArrayDeque
MyDeque.add(10);
MyDeque.add(20);
MyDeque.add(-30);
MyDeque.add(-40);
MyDeque.add(-50);
//在ArrayDeque上创建spliterator对象
Spliterator<Integer> splitr = MyDeque.spliterator();
//打印ArrayDeque的估计大小
System.out.println("Estimated size: " + splitr.estimateSize());
//显示ArrayDeque的内容
//使用forEachRemaining方法
System.out.print("MyDeque contains: ");
splitr.forEachRemaining((n) -> System.out.print(n + " "));
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
上述代码的输出将是:
Estimated size: 5
MyDeque contains: 10 20 -30 -40 -50
- 1
- 2