集合变数组: 为什么要将集合变数组?
为了限定对元素的操作,不需要进行增删了
Collection接口中的toArray方法
class CollectionToArray
{
public static void main(String[] args)
{
ArrayList<String> a1 = new ArrayList<String>(); //定义集合、泛型,数据类型为String
al.add("abc1");
al.add("abc2");
al.add("abc3");
String[] arr = al.toArray(new String[al.size()]); //指定类型的数组到底要定义多长?al.size()
/*
当指定类型的数组长度小于了集合的size,
那么该方法内部会创建一个新的数组长度为集合的size
当指定类型的数组长度大于了集合的size,就不会新创建数组,
而是使用传递进来的数据
所以创建一个刚刚好的数组最优
*/
System.out.println(Arrays.toString(arr));
}
}
很多基础面试题可以把数组转换成集合,用集合方法操作后在转换成数组
像排序,比较大小等,还是很方便
不过还是有些迷糊。。
|
|