Java中LinkedBlockingDeque toArray()方法的使用示例

Java中LinkedBlockingDeque toArray()方法的使用示例

toArray()

Java.util.concurrent.LinkedBlockingDeque.toArray() 方法返回一个数组,该数组按顺序包含所有 deque 中的元素,即从第一个到最后一个。返回的数组是安全的,因为创建了一个新的数组(因此分配了新的内存)。因此,调用者可以自由地修改该数组。它作为基于数组和基于集合的 API 之间的桥梁。

语法

public Object[] toArray()

参数:不接受任何参数。

返回值:返回包含 deque 中所有元素的数组。

下面的示例说明了 LinkedBlockingDeque.toArray() 方法:

示例一:

//Java程序演示LinkedBlockingDeque的toArray()
//方法
 
import java.util.concurrent.*;
import java.util.*;
 
public class GFG {
    public static void main(String[] args)
        throws IllegalStateException
    {
 
        //创建 LinkedBlockingDeque 的对象
        LinkedBlockingDeque  LBD
            = new LinkedBlockingDeque  ();
 
        //添加数字到 LinkedBlockingDeque 的末尾
        LBD.add(7855642);
        LBD.add(35658786);
        LBD.add(5278367);
        LBD.add(74381793);
 
        System.out.println("LinkedBlockingDeque: "
                           + LBD);
 
        Object[] a = LBD.toArray();
        System.out.println("Returned Array: "
                           + Arrays.toString(a));
    }
}

输出:

LinkedBlockingDeque: [7855642, 35658786, 5278367, 74381793]
Returned Array: [7855642, 35658786, 5278367, 74381793]

toArray(T[])

Java 的 LinkedBlockingDeque 类中的 toArray(arr[]) 方法用于形成与 LinkedBlockingDeque 中相同元素的数组。它返回一个数组,该数组包含此 LinkedBlockingDeque 中的所有元素,以正确的顺序; 返回的数组的运行时类型是指定数组的类型。如果 LinkedBlockingDeque 可以适应指定的数组,则返回其中。否则,将为此目的分配具有指定数组的运行时类型和此 LinkedBlockingDeque 的大小的新数组。
如果 LinkedBlockingDeque 可以适合指定的数组并有剩余的空间(即,数组具有比 LinkedBlockingDeque 更多的元素),则在 LinkedBlockingDeque 结束后立即设置数组中的元素为空。 (如果调用者知道 LinkedBlockingDeque 不包含任何空元素,则此方法仅用于确定 LinkedBlockingDeque 的长度。)

语法:

public <T> T[] toArray(T[] a)

参数: 方法接受一个参数 arr[],该参数是要将 LinkedBlockingDeque 的元素存储在其中的数组,如果它足够大;否则,为此目的将为该数组分配相同运行时类型的新数组。

返回值: 方法返回包含类似于 LinkedBlockingDeque 的元素的数组。

异常: 该方法可能会引发两种类型的异常:

  • ArrayStoreException :当所述数组为不同类型并且无法与 LinkedBlockingDeque 中提到的元素进行比较时。
  • NullPointerException :如果数组为空,则抛出此异常。

下面的程序说明了 LinkedBlockingDeque.toArray(arr[]) 方法的工作方式。

程序1:当数组的大小为LinkedBlockingDeque

// Java代码示例toArray(arr []

import java.util.concurrent.*;
import java.util.*;
  
public class LinkedBlockingDequeDemo {
    public static void main(String args[])
    {
        // 创建空的LinkedBlockingDeque
        LinkedBlockingDeque<String> LBD
            = new LinkedBlockingDeque<String>();
  
        // 使用add()方法将元素添加到LinkedBlockingDeque中
        LBD.add(“欢迎”);
        LBD.add(“到”);
        LBD.add(“极客”);
        LBD.add(“对于”);
        LBD.add(“极客”);
  
        // 显示LinkedBlockingDeque
        System.out.println(“ LinkedBlockingDeque:“
                             + LBD);
  
        // 创建数组并使用toArray()
        String [] arr = new String [5];
        arr = LBD.toArray(arr);
  
        // 显示arr
        System.out.println(“返回的数组:”
                        + Arrays.toString(arr));
    }
}

输出:

LinkedBlockingDeque:[欢迎,到,极客,对于,极客]
返回的数组:[欢迎,到,极客,对于,极客]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程