在 Java 中,你可以使用不同的方法将数组转换为集合,也可以把集合转换为数组。下面分别介绍这两种转换方式。
数组转换为集合
1. 使用 Arrays.asList()
方法
对于基本数据类型数组,需要先转换为对应的包装类数组,该方法返回的是一个固定大小的列表,不能进行添加和删除元素的操作。
import java.util.Arrays;
import java.util.List;
public class ArrayToListExample {
public static void main(String[] args) {
// 对于基本数据类型,需要先转换为包装类数组
Integer[] intArray = {1, 2, 3, 4, 5};
List<Integer> intList = Arrays.asList(intArray);
System.out.println(intList);
String[] strArray = {"apple", "banana", "cherry"};
List<String> strList = Arrays.asList(strArray);
System.out.println(strList);
}
}
2. 使用 Collections.addAll()
方法
创建一个新的集合,然后使用 Collections.addAll()
方法将数组元素添加到集合中,这种方式得到的集合可以进行添加和删除操作。
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class ArrayToListExample2 {
public static void main(String[] args) {
String[] strArray = {"apple", "banana", "cherry"};
List<String> strList = new ArrayList<>();
Collections.addAll(strList, strArray);
System.out.println(strList);
}
}
集合转换为数组
1. 使用 toArray()
方法
toArray()
方法有两种重载形式:
Object[] toArray()
:返回一个Object
类型的数组。<T> T[] toArray(T[] a)
:返回指定类型的数组。
import java.util.ArrayList;
import java.util.List;
public class ListToArrayExample {
public static void main(String[] args) {
List<String> strList = new ArrayList<>();
strList.add("apple");
strList.add("banana");
strList.add("cherry");
// 使用 toArray() 方法返回 Object 类型的数组
Object[] objArray = strList.toArray();
for (Object obj : objArray) {
System.out.print(obj + " ");
}
System.out.println();
// 使用 toArray(T[] a) 方法返回指定类型的数组
String[] strArray = strList.toArray(new String[0]);
for (String str : strArray) {
System.out.print(str + " ");
}
}
}
综上所述,通过上述方法可以方便地在数组和集合之间进行转换。在实际应用中,你可以根据具体需求选择合适的转换方法。