数组 list 互转

数组 转 List

方法:Arrays.asList( 数组 );

String[] arr = new String[] {"str1", "str2"};

List<String> list = Arrays.asList(arr);





List 转 数组
方法:list.toArray(new String[list.size]);
List<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
int size = list.size();
String[] arr = (String[])list.toArray(new String[size]);

### 集合与数组互相转换的方法 在 Java 编程中,集合和数组之间的转换是非常常见的操作。以下是实现集合与数组互相转换的具体方法及代码示例。 #### 1. 集合转换为数组 集合可以通过 `toArray()` 方法转换为数组。如果需要将集合中的元素转换为特定类型的数组,则可以传递一个带有正确类型的数组作为参数。 ```java import java.util.ArrayList; import java.util.List; public class CollectionToArrayExample { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("apple"); list.add("banana"); list.add("orange"); // 将集合转换为 String 类型的数组 String[] array = list.toArray(new String[list.size()]); // 特别注意 int 类型的数组转换[^1] // 遍历数组 for (String str : array) { System.out.println(str); } } } ``` #### 2. 数组转换为集合 数组可以通过 `Arrays.asList()` 方法转换为集合。需要注意的是,`Arrays.asList()` 返回的集合是固定大小的,无法进行添加或删除操作。如果需要一个可变集合,则需要将其包装到 `ArrayList` 中。 ```java import java.util.Arrays; import java.util.List; public class ArrayToCollectionExample { public static void main(String[] args) { String[] array = {"aa", "bb", "cc"}; // 将数组转换为不可变集合 List<String> fixedList = Arrays.asList(array); // 数组中存放的是引用数据类型时:直接使用 Arrays.asList() 方法[^3] // 如果需要可变集合 List<String> mutableList = new ArrayList<>(fixedList); System.out.println(mutableList); } } ``` #### 3. 使用 Set 的例子 对于 `Set` 类型的集合,也可以通过 `Arrays.asList()` 方法结合构造函数来实现转换。 ```java import java.util.Arrays; import java.util.HashSet; import java.util.Set; public class SetToArrayExample { public static void main(String[] args) { String[] values = {"a", "b", "c", "e", "d"}; // 数组转集合 Set<String> sets = new HashSet<>(Arrays.asList(values)); // 数组转集合[^4] // 遍历集合 for (String s : sets) { System.out.print(s + " "); } System.out.println(); // 集合转数组 String[] values_bak = sets.toArray(new String[sets.size()]); // 集合转换为数组[^4] // 遍历数组 for (String s : values_bak) { System.out.print(s + " "); } } } ``` #### 注意事项 - 当数组中的元素为基本数据类型(如 `int`)时,不能直接使用 `Arrays.asList()`,因为该方法只能处理对象类型的数组。此时需要手动遍历数组并将元素添加到集合中。 - `Arrays.asList()` 返回的集合是固定大小的,无法进行添加或删除操作。如果需要动态集合,必须将其包装到 `ArrayList` 中[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值