一、集合轉數組概述
Java集合框架提供了將集合轉換成數組的方法。這種轉換允許在需要數組的任何地方使用集合。通過將元素集合存儲在數組中,可以利用數組的特定屬性(例如,可使用數組的length屬性快速訪問集合中的元素數量)。
Collection接口提供了兩種方法來將集合轉換為數組:
Object[] toArray() // 將集合轉換成對象數組 <T> T[] toArray(T[] a)// 將集合轉換成指定類型的數組
其中第一個方法返回一個Object類型的數組,該數組包含所有元素的集合。第二個方法返回一個指定類型的數組,該數組包含所有元素的集合。
二、toArrray()方法轉換為Object類型數組
如果我們調用toArrray()方法並將其結果分配給一個數組類型,那麼該數組將包含由Object類表示的所有元素。下面是一個列表示例:
import java.util.*;
public class ArrayListToArray {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("JavaFX");
list.add("Hbase");
list.add("WebGL");
list.add("OpenCV");
list.add("Java");
list.add("NodeJS");
Object[] object = list.toArray();
System.out.println("Printing Object Array:");
for(Object obj : object){
System.out.println(obj);
}
}
}
輸出結果如下所示:
Printing Object Array: JavaFX Hbase WebGL OpenCV Java NodeJS
三、toArray(T[] a)方法轉換為指定類型數組
通常使用帶有泛型對象的toArray(T[] a)方法將元素列錶轉換為指定類型的數組。下面看一下如何使用這個方法:
import java.util.*;
public class ArrayListToArray {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("JavaFX");
list.add("Hbase");
list.add("WebGL");
list.add("OpenCV");
list.add("Java");
list.add("NodeJS");
String[] stringArr = new String[list.size()];
list.toArray(stringArr);
System.out.println("Printing String Array:");
for(String str : stringArr){
System.out.println(str);
}
}
}
輸出結果如下所示:
Printing String Array: JavaFX Hbase WebGL OpenCV Java NodeJS
如以上代碼所示,我們通過創建一個數組對象來使用toArray(T[] a)方法將元素列錶轉換為指定類型的數組,然後再將這個數組對象傳遞給 toArray() 方法。結果就是一個包含所有元素的具有給定類型的數組。
四、總結
通過使用Java集合框架提供的toArray()方法,我們可以將一個集合轉換成數組。這使得在需要使用數組的任何地方使用集合變得更加容易。我們學習了兩種方法:toArray() 和 toArray(T[] a),它們可以將元素列錶轉換為Object類型或指定類型的數組。
下面是完整代碼:
import java.util.*;
public class ArrayListToArray {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("JavaFX");
list.add("Hbase");
list.add("WebGL");
list.add("OpenCV");
list.add("Java");
list.add("NodeJS");
// toArray() method converts list to an object array
Object[] object = list.toArray();
System.out.println("Printing Object Array:");
for(Object obj : object){
System.out.println(obj);
}
// toArray(T[] a) method converts list to a specified type of array
String[] stringArr = new String[list.size()];
list.toArray(stringArr);
System.out.println("Printing String Array:");
for(String str : stringArr){
System.out.println(str);
}
}
}
原創文章,作者:CSET,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/131518.html
微信掃一掃
支付寶掃一掃