java.util.PriorityQueue.spliterator() 方法用于创建一个后期绑定和快速失败的 spliterator给定优先级队列中的元素。
语法
public Spliterator<E> spliterator()
这里,E 是容器维护的元素类型。
参数
不需要参数。
返回值
返回优先级队列中元素的分割器。
异常
不适用。
示例:
在下面的示例中,java.util.PriorityQueue.spliterator() 方法用于在给定队列中的元素上创建分割器。
import java.util.*;
public class MyClass {
public static void main(String[] args) {
//创建优先级队列
PriorityQueue<Integer> PQueue = new PriorityQueue<Integer>();
//填充优先级队列
PQueue.add(10);
PQueue.add(20);
PQueue.add(30);
PQueue.add(40);
PQueue.add(50);
//在优先级队列上创建spliterator对象
Spliterator<Integer> splitr = PQueue.spliterator();
//显示优先级队列的内容
//使用tryAdvance方法
System.out.print("PQueue contains: ");
while(splitr.tryAdvance((n) -> System.out.print(n + " ")));
}
}
上述代码的输出将是:
PQueue contains: 10 20 30 40 50
示例:
让我们考虑另一个例子来了解给定队列中元素的分割器的概念。
import java.util.*;
public class MyClass {
public static void main(String[] args) {
//创建优先级队列
PriorityQueue<Integer> PQueue = new PriorityQueue<Integer>();
//填充优先级队列
PQueue.add(10);
PQueue.add(20);
PQueue.add(30);
PQueue.add(40);
PQueue.add(50);
//在优先级队列上创建spliterator对象
Spliterator<Integer> splitr = PQueue.spliterator();
//打印优先级队列的estimateSize
System.out.println("Estimated size: " + splitr.estimateSize());
//使用显示优先级队列的内容
//forEachRemaining方法
System.out.print("PQueue contains: ");
splitr.forEachRemaining((n) -> System.out.print(n + " "));
}
}
上述代码的输出将是:
Estimated size: 5
PQueue contains: 10 20 30 40 50