Java中的ArrayBlockingQueue spliterator()方法

这个 拆分器() 方法 ArrayBlockingQueue 归还 分离器 在ArrayBlockingQueue的元素上。返回的迭代器弱一致。在Java8中,拆分器可以与流一起使用。拆分器可以单独或批量遍历元素。 语法:

null
public Spliterator spliterator()

返回值: 此方法在ArrayBlockingQueue中的元素上返回拆分器。 下面的程序演示了ArrayBlockingQueue类的spliterator()方法: 项目1:

JAVA

// Java Program Demonstrate spliterator()
// method of ArrayBlockingQueue
import java.util.concurrent.ArrayBlockingQueue;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// define capacity of ArrayBlockingQueue
int capacityOfQueue = 7 ;
// create object of ArrayBlockingQueue
ArrayBlockingQueue<Integer> Queue
= new ArrayBlockingQueue<Integer>(capacityOfQueue);
// Add element to ArrayBlockingQueue
Queue.add( 22 );
Queue.add( 34 );
Queue.add( 45 );
Queue.add( 67 );
// create Spliterator of Queue
// using spliterator() method
Spliterator<Integer> numbers = Queue.spliterator();
// getExactSize of Spliterator
System.out.println("Size of Spliterator : "
+ numbers.estimateSize());
System.out.println("list of Numbers:");
// forEachRemaining method of Spliterator
numbers.forEachRemaining((n) -> System.out.println(n));
}
}


输出:

Size of Spliterator : 4list of Numbers:22344567

项目2:

JAVA

// Java Program Demonstrate spliterator()
// method of ArrayBlockingQueue
import java.util.concurrent.ArrayBlockingQueue;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// define capacity of ArrayBlockingQueue
int capacityOfQueue = 7 ;
// create object of ArrayBlockingQueue
ArrayBlockingQueue<String> QueueOfStrings
= new ArrayBlockingQueue<String>(capacityOfQueue);
// Add element to ArrayBlockingQueue
QueueOfStrings.add("India");
QueueOfStrings.add("Pakistan");
QueueOfStrings.add("England");
QueueOfStrings.add("China");
QueueOfStrings.add("UAE");
QueueOfStrings.add("Spain");
// create Spliterator of QueueOfStrings
// using spliterator() method
Spliterator<String>
listOfStrings = QueueOfStrings.spliterator();
// getExactSize of Spliterator
System.out.println("Size of Spliterator : "
+ listOfStrings.estimateSize());
System.out.println("list of Country names:");
// forEachRemaining method of Spliterator
listOfStrings.forEachRemaining((str) -> print(str));
}
public static void print(String str)
{
System.out.println("Value = " + str);
}
}


输出:

Size of Spliterator : 6list of Country names:Value = IndiaValue = PakistanValue = EnglandValue = ChinaValue = UAEValue = Spain

参考: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ArrayBlockingQueue.html#spliterator–

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享