在 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 + " ");
        }
    }
}

综上所述,通过上述方法可以方便地在数组和集合之间进行转换。在实际应用中,你可以根据具体需求选择合适的转换方法。