当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java LinkedBlockingDeque toArray()用法及代码示例


  • toArray()

    Java.util.concurrent.LinkedBlockingDeque.toArray()方法以适当的顺序(即从头到尾)返回一个包含双端队列中所有元素的数组。返回的数组在创建新数组时将是安全的(因此将分配新的内存)。因此,调用者可以自由修改数组。它充当了基于数组的API和基于集合的API之间的桥梁。

    句法

    public Object[] toArray()

    参数:它不接受任何参数。


    返回值:它返回一个包含双端队列中所有元素的数组。

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

    示例1:

    // Java Program Demonstrate toArray() 
    // method of LinkedBlockingDeque 
      
    import java.util.concurrent.*; 
    import java.util.*; 
      
    public class GFG { 
        public static void main(String[] args) 
            throws IllegalStateException 
        { 
      
            // create object of LinkedBlockingDeque 
            LinkedBlockingDeque<Integer> LBD 
                = new LinkedBlockingDeque<Integer>(); 
      
            // Add numbers to end of 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结尾的数组中的元素设置为null。 (仅当调用者知道LinkedBlockingDeque不包含任何null元素时,这才对确定LinkedBlockingDeque的长度很有用。)

    用法:

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

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

    返回值:该方法返回一个包含与LinkedBlockingDeque类似的元素的数组。

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

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

    下面的程序演示了LinkedBlockingDeque.toArray(arr [])方法的用法。

    示例1:当数组的大小为LinkedBlockingDeque

    // Java code to illustrate toArray(arr[]) 
      
    import java.util.concurrent.*; 
    import java.util.*; 
      
    public class LinkedBlockingDequeDemo { 
        public static void main(String args[]) 
        { 
            // Creating an empty LinkedBlockingDeque 
            LinkedBlockingDeque<String> LBD 
                = new LinkedBlockingDeque<String>(); 
      
            // Use add() method to add 
            // elements into the LinkedBlockingDeque 
            LBD.add("Welcome"); 
            LBD.add("To"); 
            LBD.add("Geeks"); 
            LBD.add("For"); 
            LBD.add("Geeks"); 
      
            // Displaying the LinkedBlockingDeque 
            System.out.println("The LinkedBlockingDeque: "
                               + LBD); 
      
            // Creating the array and using toArray() 
            String[] arr = new String[5]; 
            arr = LBD.toArray(arr); 
      
            // Displaying arr 
            System.out.println("Returned Array: "
                               + Arrays.toString(arr)); 
        } 
    }
    输出:
    The LinkedBlockingDeque: [Welcome, To, Geeks, For, Geeks]
    Returned Array: [Welcome, To, Geeks, For, Geeks]
    


相关用法


注:本文由纯净天空筛选整理自psil123大神的英文原创作品 LinkedBlockingDeque toArray() method in Java with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。