集合接口的 toArray() 方法返回一個包含集合中所有元素的數組。
第二個語法返回一個包含此集合中所有元素的數組,其中返回數組的運行時類型是指定數組的運行時類型。
用法
public Object[] toArray()
public<T> T[] toArray(T[] a)
參數
NA
參數 'a' 表示將存儲隊列元素的數組。
返回值
toArray() 方法返回一個包含此隊列所有元素的數組。
拋出
toArray() 方法拋出:
ArrayStoreException - 如果指定數組的運行時類型不是此集合中每個元素的運行時類型的超類型。
NullPointerException- 如果定義的數組為空。
例子1
import java.util.Collection;
import java.util.concurrent.ConcurrentLinkedQueue;
public class JavaCollectionToArrayExample1 {
static int j=1;
public static void main(String[] args) {
Collection<Character> collection = new ConcurrentLinkedQueue();
for (char i='A';i<='Z';i++) {
collection.add(i);
}
System.out.print("Values:");
Object[] a=collection.toArray();
System.out.println();
for(int i=0 ;i<a.length;i++){
System.out.println("Element "+ j++ +":"+ a[i]);
}
}
}
輸出:
Values: Element 1:A Element 2:B Element 3:C Element 4:D Element 5:E Element 6:F Element 7:G Element 8:H Element 9:I Element 10:J Element 11:K Element 12:L Element 13:M Element 14:N Element 15:O Element 16:P Element 17:Q Element 18:R Element 19:S Element 20:T Element 21:U Element 22:V Element 23:W Element 24:X Element 25:Y Element 26:Z
例子2
import java.util.Collection;
import java.util.concurrent.ConcurrentLinkedQueue;
public class JavaCollectcionToArrayExample2 {
public static void main(String[] args) {
Collection<Integer> queue = new ConcurrentLinkedQueue();
for (int i=1;i<=10;i++) {
queue.add(i);
}
Object[] a = queue.toArray();
for (int i = 0; i <a.length; i++) {
System.out.print(a[i] + " ");
if (a[i] %2==0) {
System.out.println(a[i]+" is an even number.");
}
}
}
}
輸出:
Error:(15, 18) java:bad operand types for binary operator '%' first type: java.lang.Object second type:int
運算符 '%' 不能應用於 java.lang.Object。如果這樣做,它會給你一個錯誤。
例子3
本例是 above-described 程序的解決方案。
import java.util.Collection;
import java.util.concurrent.ConcurrentLinkedQueue;
public class JavaCollectionToArrayExample3 {
public static void main(String[] args) {
Collection<Integer>collection= new ConcurrentLinkedQueue();
System.out.println("List of even numbers in our collection.");
for (int i=1;i<=10;i++) {
collection.add(i);
}
Integer[] a = new Integer[5];
Integer[] b = collection.toArray(a);
for (int i = 0; i <b.length; i++) {
if (b[i] %2==0) {
System.out.println(b[i]+" ");
}
}
}
}
輸出:
List of even numbers in our collection. 2 4 6 8 10
示例 4
import java.util.Collection;
import java.util.concurrent.ConcurrentLinkedQueue;
public class JavaCollectionToArrayExample4 {
public static void main(String[] args) {
Collection<String> collection= new ConcurrentLinkedQueue();
collection.add("Reema");
collection.add("Rahul");
collection.add("Rita");
collection.add("Ramesh");
Object[] a=collection.toArray(null);
for(int i=0 ;i<a.length;i++){
System.out.println("Element:"+a[i]);
}
}
}
輸出:
Exception in thread "main" java.lang.NullPointerException at java.util.concurrent.ConcurrentLinkedQueue.toArray(ConcurrentLinkedQueue.java:638) at com.javaTpoint.JavaCollectionToArrayExample4.main(JavaCollectionToArrayExample4.java:12)
相關用法
- Java Collection retainAll()用法及代碼示例
- Java Collection addAll()用法及代碼示例
- Java Collection size()用法及代碼示例
- Java Collection add()用法及代碼示例
- Java Collection removeAll()用法及代碼示例
- Java Collection remove()用法及代碼示例
- Java Collection equals()用法及代碼示例
- Java Collection hashCode()用法及代碼示例
- Java Collection contains()用法及代碼示例
- Java Collection spliterator()用法及代碼示例
- Java Collection containsAll()用法及代碼示例
- Java Collection removeIf()用法及代碼示例
- Java Collection clear()用法及代碼示例
- Java Collection isEmpty()用法及代碼示例
- Java Collection iterator()用法及代碼示例
- Java Collections synchronizedSortedSet()用法及代碼示例
- Java Collections checkedQueue()用法及代碼示例
- Java Collections unmodifiableNavigableSet()用法及代碼示例
- Java Collections checkedSet()用法及代碼示例
- Java Collections copy()用法及代碼示例
注:本文由純淨天空篩選整理自 Java Collection toArray() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。