数组和list互转

Posted 草木物语

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组和list互转相关的知识,希望对你有一定的参考价值。

数组转list

方法1:(不推荐)

String[] stringArray = { "a", "b", "c", "d", "e" };
List<String> list = Arrays.asList(stringArray);

 

// 191127 Arrays中有一个静态方法asList可以返回对应的List,如下所示:
Integer[] a = {1, 2, 3};
List<Integer> list = Arrays.asList(a);
// list.add(4); //需要注意的是,这个方法返回的List,是Arrays类的一个内部类,在这个内部类的实现中,内部用的数组就是传入的数组,没有拷贝,也不会动态改变大小,所以对数组的修改也会反映到List中,对List调用add、remove方法会抛出异常。

 

int[] datas = new int[]{1, 2, 3, 4, 5};
List list = Arrays.asList(datas);
System.out.println(list.size());//1 如果将int改为 Integer,则长度就会变成 5 

 

 

方法2:

ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(stringArray));

 

// 191127 要使用ArrayList完整的方法,应该新建一个ArrayList,如下所示:
List<Integer> list2 = new ArrayList<Integer>(Arrays.asList(a));

 

 

方法3:

List<String> list1 = new ArrayList<String>(stringArray.length);
Collections.addAll(list1, stringArray);

 

 

list转数组

List<String> list = new ArrayList<String>();
list.add("1");
list.add("2");
list.add("3");

String[] strings = new String[list.size()];
list.toArray(strings);

 

 

参考:http://www.cnblogs.com/liushaobo/p/4423102.html

参考:java编程逻辑9.1.5

以上是关于数组和list互转的主要内容,如果未能解决你的问题,请参考以下文章

List集合与E[]数组互转方法集锦

数组和List 互转

数组和list互转

java集合和数组互转

集合和数组互转,list,array

java中数组和ArrayList的互转