Java基础之集合转换为数组
集合转换为数组:
1、指定类型的数组到底要定义多长呢?
当指定类型的数组长度小于了集合的size,那么该方法内部会创建一个新的数组。长度为集合的size。
当指定类型的数组长度大于了集合的size,就不会新创建数组了,而是使用传递进来的数组。
所以创建一个刚刚好的数组最优。
ArrayList<String> al = new ArrayList<String>();
al.add("abc");
al.add("cba");
al.add("bac");
al.add("cab");
al.add("bca");
String[] strArray = al.toArray(new String[al.size()]);
System.out.println(Arrays.toString(strArray));
al.add("abc");
al.add("cba");
al.add("bac");
al.add("cab");
al.add("bca");
String[] strArray = al.toArray(new String[al.size()]);
System.out.println(Arrays.toString(strArray));
2、为什么要将集合变成数组?
为了限定对元素的操作(不需要进行增删),比如对文件目录的管理。