- toArray():ConcurrentLinkedQueue的toArray()方法用于按正确顺序返回与ConcurrentLinkedQueue相同的元素的数组。本质上,它将所有元素从ConcurrentLinkedQueue复制到新数组。此方法充当数组和ConcurrentLinkedQueue之间的桥梁。
用法:
public Object[] toArray()
返回值:该方法返回一个数组,其中包含与ConcurrentLinkedQueue相似的元素。
下面的程序演示了java.util.concurrent.ConcurrentLinkedQueue.toArray()方法。
示例1:
// Java Program Demonstrate toArray() // method of ConcurrentLinkedQueue import java.util.concurrent.ConcurrentLinkedQueue; public class GFG { public static void main(String[] args) { // create object of ConcurrentLinkedQueue ConcurrentLinkedQueue<Integer> queue = new ConcurrentLinkedQueue<Integer>(); // Add element to ConcurrentLinkedQueue queue.add(2300); queue.add(1322); queue.add(8945); queue.add(6512); // print queue details System.out.println("Queue Contains " + queue); // apply toArray() method on queue Object[] array = queue.toArray(); // Print elements of array System.out.println("The array contains:"); for (Object i : array) { System.out.print(i + "\t"); } } }
输出:Queue Contains [2300, 1322, 8945, 6512] The array contains: 2300 1322 8945 6512
示例2:
// Java Program Demonstrate toArray() // method of ConcurrentLinkedQueue import java.util.concurrent.ConcurrentLinkedQueue; public class GFG { public static void main(String args[]) { // Creating a ConcurrentLinkedQueue ConcurrentLinkedQueue<String> queue = new ConcurrentLinkedQueue<String>(); // elements into the Queue queue.add("Welcome"); queue.add("To"); queue.add("Jungle"); // Displaying the ConcurrentLinkedQueue System.out.println("The ConcurrentLinkedQueue: " + queue); // Creating the array and using toArray() Object[] arr = queue.toArray(); System.out.println("The array is:"); for (int j = 0; j < arr.length; j++) System.out.println(arr[j]); } }
输出:The ConcurrentLinkedQueue: [Welcome, To, Jungle] The array is: Welcome To Jungle
- toArray(T [] a):ConcurrentLinkedQueue的toArray(T [] a)方法用于一个数组,该数组包含与此ConcurrentLinkedQueue相同的元素,并且顺序正确。此方法仅在一种情况下与toArray()不同。如果ConcurrentLinkedQueue大小小于或等于传递的数组,则返回的数组的类型与参数中传递的数组的类型相同。否则,将分配一个与指定数组相同类型的新数组,并且该数组的大小等于此队列的大小。此方法充当数组和集合之间的桥梁。
用法:
public <T> T[] toArray(T[] a)
参数:此方法将数组作为参数,如果队列足够大,则将队列的所有元素都复制到其中。否则,将为它分配一个具有相同运行时类型的新数组。
返回值:此方法返回包含与ConcurrentLinkedQueue相似的元素的数组。
异常:此方法引发以下异常:
- ArrayStoreException:当传递的数组与ConcurrentLinkedQueue的元素类型不同时。
- NullPointerException :如果传递的数组为Null。
以下示例程序旨在说明java.util.concurrent.ConcurrentLinkedQueue.toArray(T [] a)方法。
示例1:
// Java Program Demonstrate toArray() // method of ConcurrentLinkedQueue import java.util.concurrent.ConcurrentLinkedQueue; public class GFG { public static void main(String[] args) { // create object of ConcurrentLinkedQueue ConcurrentLinkedQueue<String> queue = new ConcurrentLinkedQueue<String>(); // elements into the Queue queue.add("Welcome"); queue.add("To"); queue.add("Jungle"); // print queue details System.out.println("Queue Contains " + queue); // the array to pass in toArray() // array has size equal to size of ConcurrentLinkedQueue String[] passArray = new String[queue.size()]; // Calling toArray(T[] a) method Object[] array = queue.toArray(passArray); // Print elements of passed array System.out.println("\nThe array passed :"); for (String i : passArray) { System.out.print(i + " "); } System.out.println(); // Print elements of returned array System.out.println("\nThe array returned :"); for (Object i : array) { System.out.print(i + " "); } } }
输出:Queue Contains [Welcome, To, Jungle] The array passed : Welcome To Jungle The array returned : Welcome To Jungle
示例2:显示ArrayStoreException
// Java Program Demonstrate toArray() // method of ConcurrentLinkedQueue import java.util.concurrent.ConcurrentLinkedQueue; public class GFG { public static void main(String[] args) { // create object of ConcurrentLinkedQueue ConcurrentLinkedQueue<Integer> queue = new ConcurrentLinkedQueue<Integer>(); // Add element to ConcurrentLinkedQueue queue.add(2323); queue.add(2472); queue.add(4235); queue.add(1242); // the array to pass in toArray() // array has size equal to size of ConcurrentLinkedQueue String[] passArray = new String[queue.size()]; // Calling toArray(T[] a) method try { Object[] array = queue.toArray(passArray); } catch (ArrayStoreException e) { System.out.println("Exception: " + e); } } }
输出:Exception: java.lang.ArrayStoreException: java.lang.Integer
示例2:显示NullPointerException
// Java Program Demonstrate toArray() // method of ConcurrentLinkedQueue import java.util.concurrent.ConcurrentLinkedQueue; public class GFG { public static void main(String[] args) { // create object of ConcurrentLinkedQueue ConcurrentLinkedQueue<Integer> queue = new ConcurrentLinkedQueue<Integer>(); // Add element to ConcurrentLinkedQueue queue.add(2323); queue.add(2472); queue.add(4235); queue.add(1242); // the array to pass String[] passArray = null; // Calling toArray(T[] a) method try { Object[] array = queue.toArray(passArray); } catch (NullPointerException e) { System.out.println("Exception: " + e); } } }
输出:Exception: java.lang.NullPointerException
相关用法
- Java ConcurrentLinkedQueue add()用法及代码示例
- Java ConcurrentLinkedQueue contains()用法及代码示例
- Java ConcurrentLinkedQueue poll()用法及代码示例
- Java ConcurrentLinkedQueue offer()用法及代码示例
- Java ConcurrentLinkedQueue size()用法及代码示例
- Java ConcurrentLinkedQueue addAll()用法及代码示例
- Java ConcurrentLinkedQueue remove()用法及代码示例
- Java ConcurrentLinkedQueue spliterator()用法及代码示例
- Java ConcurrentLinkedQueue iterator()用法及代码示例
- Java ConcurrentLinkedQueue isEmpty()用法及代码示例
- Java ConcurrentLinkedQueue peek()用法及代码示例
- Java Set toArray()用法及代码示例
- Java LinkedHashSet toArray(T[])用法及代码示例
- Java ConcurrentLinkedDeque toArray()用法及代码示例
- Java AbstractSet toArray()用法及代码示例
注:本文由纯净天空筛选整理自AmanSingh2210大神的英文原创作品 ConcurrentLinkedQueue toArray() Method in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。