数组转List是经常会遇到的需求,但是转换的时候也需要注意,否则会出现异常。
数组转集合的方法一般有三种:
第一种:
通过Arrays.asList(array)进行转换,通过该方式将数组转成集合之后,不能对集合进行增删,只能进行查改,否则会抛异常
@Test
public void testArrayToList(){
String[] array = {"a","b","c"};
List<String> list = Arrays.asList(array);
// 这里为了验证结论,对转换后的list插入一条数据
// 会在add操作时报异常java.lang.UnsupportedOperationException
list.add("hello");
System.out.println(list);
}
第二种:
通过ArrayList的构造器进行转换,通过该方式将数组转换为集合之后,可以对集合进行增删,也能进行查改,
@Test
public void testArrayToList(){
String[] array = {"a","b","c"};
ArrayList<String> list = new ArrayList<>(Arrays.asList(array));
// 这里为了验证结论,对转换后的list插入一条数据
list.add("hello");
System.out.println(list);
}
第三种:
通过集合工具类Collections.addAll()进行转换,通过该方式将数组转换为集合之后,可以对集合进行增删查改,
@Test
public void testArrayToList(){
String[] array = {"a","b","c"};
ArrayList<String> list = new ArrayList<>(array.length);
Collections.addAll(list, array);
// 这里为了验证结论,对转换后的list插入一条数据
list.add("hello");
System.out.println(list);
}