有点明白了,不过这样设计好奇怪啊,xx yy.toArray(zz)里的xx和zz都不一定够大,按大家的说法当我给的zz不够大时,java会自动返回一个大小合适的xx数组,那么这个xx数组我又要如何定义呢?如果我接收这个函数的数组xx也不够大呢?java能帮我扩容?这岂不是成了动态数组?另外如果是这样,大家平时是不是干脆就这样写好了:Integer[] i = new Integer[1]; i = ArrayList.toArray(i);这样是不是就无论如何都能成功转换成数组i了?
改正一下:Integer[] i = new Integer[1]; i = aArrayList.toArray(i);
也就是说,如果你的zz不能容纳yy的全部元素,jvm就重新分配一个
Array返回,如果空间zz够大,就返回原zz,多余空间用赋null
i = ArrayList.toArray(i);这样是不是就无论如何都能成功转换成数组i了?
i = aArrayList.toArray(i);