Java中的 CopyOnWriteArraySet toArray() 方法示例
toArray()
Java.util.concurrent.CopyOnWriteArraySet.toArray()方法返回一个数组,该数组以正确的顺序(即从第一个到最后一个)包含集合中的所有元素。当创建一个新数组时,返回的数组将是安全的(因此分配了新的内存)。因此调用者可以自由地修改数组。它充当基于数组和基于集合的 API 之间的桥梁。
句法
public Object[] toArray()
参数:不接受任何参数。
返回值:它返回一个包含集合中所有元素的数组。
下面的示例说明了 CopyOnWriteArraySet.toArray() 方法:
示例 1:
// Java Program Demonstrate toArray() // method of CopyOnWriteArraySet import java.util.concurrent.*; import java.util.*; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of CopyOnWriteArraySet CopyOnWriteArraySet
set = new CopyOnWriteArraySet (); // Add numbers to end of CopyOnWriteArraySet set.add(7855642); set.add(35658786); set.add(5278367); set.add(74381793); System.out.println("CopyOnWriteArraySet: " + set); Object[] a = set.toArray(); System.out.println("Returned Array: " + Arrays.toString(a)); } } 输出:CopyOnWriteArraySet: [7855642, 35658786, 5278367, 74381793] Returned Array: [7855642, 35658786, 5278367, 74381793]
toArray(T[])
Java中CopyOnWriteArraySet类的toArray(arr[])方法方法用于组成与CopyOnWriteArraySet相同元素的数组。它以正确的顺序返回一个包含此 CopyOnWriteArraySet 中所有元素的数组;返回数组的运行时类型是指定数组的类型。如果 CopyOnWriteArraySet 适合指定的数组,则在其中返回。否则,将使用指定数组的运行时类型和此 CopyOnWriteArraySet 的大小分配一个新数组。
如果 CopyOnWriteArraySet 适合指定的数组并有剩余空间(即,数组的元素比 CopyOnWriteArraySet 多),则数组中紧跟 CopyOnWriteArraySet 末尾的元素设置为空。 (仅当调用者知道 CopyOnWriteArraySet 不包含任何空元素时,这对确定 CopyOnWriteArraySet 的长度很有用。)句法:
public
T[] toArray(T[] a) 参数:该方法接受一个参数arr[] ,如果它足够大,则该参数是要存储 CopyOnWriteArraySet 元素的数组;否则,将为此目的分配相同运行时类型的新数组。
返回值:该方法返回一个包含类似于 CopyOnWriteArraySet 的元素的数组。
异常:该方法可能会抛出两种类型的异常:
- ArrayStoreException :当提到的数组是不同的类型并且无法与 CopyOnWriteArraySet 中提到的元素进行比较时。
- NullPointerException :如果数组为 Null,则抛出此异常。
下面的程序说明了 CopyOnWriteArraySet.toArray(arr[]) 方法的工作。
程序 1:当数组大小为 CopyOnWriteArraySet 时
// Java code to illustrate toArray(arr[]) import java.util.concurrent.*; import java.util.*; public class CopyOnWriteArraySetDemo { public static void main(String args[]) { // Creating an empty CopyOnWriteArraySet CopyOnWriteArraySet
set = new CopyOnWriteArraySet (); // Use add() method to add // elements into the CopyOnWriteArraySet set.add("Welcome"); set.add("To"); set.add("Geeks"); set.add("For"); set.add("Geeks"); // Displaying the CopyOnWriteArraySet System.out.println("The CopyOnWriteArraySet: " + set); // Creating the array and using toArray() String[] arr = new String[5]; arr = set.toArray(arr); // Displaying arr System.out.println("Returned Array: " + Arrays.toString(arr)); } } 输出:The CopyOnWriteArraySet: [Welcome, To, Geeks, For] Returned Array: [Welcome, To, Geeks, For, null]