一、集合轉數組概述
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-tw/n/131518.html