Java 中的 LinkedBlockingDeque spliterator() 方法

Java 中的 LinkedBlockingDeque spliterator() 方法

LinkedBlockingDeque 类的 spliterator() 方法返回一个 Spliterator,用于遍历 LinkedBlockingDeque 的元素。返回的迭代器是弱一致的,可以与 Java 8 中的流一起使用。Spliterator 可以单独遍历元素,也可以批量遍历。

语法:

public Spliterator spliterator()

返回值: 此方法返回一个 Spliterator,可以遍历 LinkedBlockingDeque 中的元素。

下面的程序演示了 LinkedBlockingDeque 的 spliterator() 方法:

程序 1:

// Java Program to demonstrate spliterator()
// method of LinkedBlockingDeque
  
import java.util.concurrent.LinkedBlockingDeque;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create object of LinkedBlockingDeque
        LinkedBlockingDeque<Integer> LBD
            = new LinkedBlockingDeque<Integer>();
  
        // Add elements
        LBD.add(22);
        LBD.add(34);
        LBD.add(45);
        LBD.add(67);
  
        // create Spliterator of Deque
        // using spliterator() method
        Spliterator<Integer> numbers = LBD.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 : 4
list of Numbers:
22
34
45
67

程序 2:

// Java Program to demonstrate spliterator()
// method of LinkedBlockingDeque
  
import java.util.concurrent.LinkedBlockingDeque;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create object of LinkedBlockingDeque
        LinkedBlockingDeque<String> LBD
            = new LinkedBlockingDeque<String>();
  
        // Add numbers to front of LinkedBlockingDeque
        LBD.add("Geeks");
        LBD.add("forGeeks");
        LBD.add("A");
        LBD.add("Computer");
        LBD.add("Portal");
  
        // create Spliterator of Deque
        // using spliterator() method
        Spliterator<String> numbers = LBD.spliterator();
  
        // getExactSize of Spliterator
        System.out.println("Size of Spliterator : "
                           + numbers.estimateSize());
  
        System.out.println("list of Strings:");
  
        // forEachRemaining method of Spliterator
        numbers.forEachRemaining((n) -> System.out.println(n));
    }
}
Size of Spliterator : 5
list of Strings:
Geeks
forGeeks
A
Computer
Portal

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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程