String数组转List的三种方式

数组转List是经常会遇到的需求,但是转换的时候也需要注意,否则会出现异常。

数组转集合的方法一般有三种:

第一种:

通过Arrays.asList(array)进行转换,通过该方式将数组转成集合之后,不能对集合进行增删,只能进行查改,否则会抛异常

@Test
public void testArrayToList(){
    String[] array = {"a","b","c"};
    List 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 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 list = new ArrayList<>(array.length);
    Collections.addAll(list, array);
    

    // 这里为了验证结论,对转换后的list插入一条数据
    list.add("hello");
    System.out.println(list);
}

你可能感兴趣的:(JAVA,java)