关于ArrayList的toArray使用:
1:无参数的toArray使用
无参数的toArray会直接在toArray内部初始化一个大小与ArrayList相同数组并赋值返回。
方法源码如下:
2:有参数的toArray使用
这个比较特殊,如果想Main中使用那样,即如下:
直接声明一个Integer数组,没有初始化。然后调用 in=values.toArray(in);的话,会抛出异常,
Exception in thread "main" java.lang.NullPointerException ,具体原因如下:
有参数的toArray的实现:
通过实现可以看出,当调用in=values.toArray(in);时候传入的in是一个未初始化的数组,当在toArray内部判断大小时候便会抛出空指针异常!