深入理解List的toArray()方法和toArray(T[] a)方法
上面这篇博文讲的比较好,可以看下,其中里面介绍toArray(T[] a)没有例子,我这补充下:
public static void main(String[] args) {
List<Integer> list = new ArrayList();
list.add(1);
list.add(5);
list.add(3);
Integer[] arry1 = new Integer[6];
arry1 = list.toArray(new Integer[0]);//Integer.class
System.out.println("*****************arry1[i]*************");
for(int i=0;i<arry1.length;i++){
System.out.println(arry1[i]);
}
System.out.println("*****************arry1[i]*************");
Integer[] arry2 = new Integer[6];
System.out.println("*****************arry2[i]*************");
arry2 = list.toArray(new Integer[list.size()]);//Integer.class
for(int i=0;i<arry2.length;i++){
System.out.println(arry2[i]);
}
System.out.println("*****************arry2[i]*************");
System.out.println("*****************arry3[i]*************");
Integer[] arry3 = new Integer[6];
arry3 = list.toArray(arry3);//Integer.class,只有这个array长度大于list的长度
for(int i=0;i<arry3.length;i++){
System.out.println(arry3[i]);
}
System.out.println("*****************arry3[i]*************");
}
//运行结果
*****************arry1[i]*************
1
5
3
*****************arry1[i]*************
*****************arry2[i]*************
1
5
3
*****************arry2[i]*************
*****************arry3[i]*************
1
5
3
null
null
null
*****************arry3[i]*************
Process finished with exit code 0