Java中Array与ArrayList之间的转换
ArrayList是一个数组队列,可以理解为是一个动态数组,即它的容量能动态增加,相当于C++中的Vector容器。
Array也是一个数组队列,是一个静态数组,长度是固定的,不能更改。
很多情况下,我们需要在两者之间进行转换,转换方法如下:
packagearrayListToArray;
importjava.util.ArrayList;
importjava.util.Arrays;
importjava.util.List;
publicclass ArrayListToArray {
publicstaticvoid main(String[] args) {
ArrayList<String>list = newArrayList<>();
list.add("abc");
list.add("def");
list.add("ghi");
intsize = list.size();
//ArrayList转Array
String[]line = (String[])list.toArray(newString[size]);
for(inti=0;i<size; ++i)
System.out.println(line[i]);
System.out.println("------------------------");
//Array转ArrayList
List<String>al = Arrays.asList(line);
for(inti=0;i<size; ++i)
System.out.println(al.get(i));
}
}
结果:
abc
def
ghi
------------------------
abc
def
ghi