List的toArray方法强制转换

List容器类中有一个toArray()的方法,该方法是用来把List转化为数组的。


这个方法有一个特点就是转化出来的数组是复制了原数据的一个副本而不只是原数据的一个引用。因此我们可以放心的更改这些数据而不会影响到原List中的数据。


当我们用toArray()方法时涉及到数据类型转换的问题,首先需要确保List内的元素是可以转换为你想转化的类型的。


该方法有两种使用形式:toArray()与toArray(T[] t):
toArray()的返回值是一个Object的数组,Object[],这个数组是不可以进行强制数据转换的。如果你这样写的话,就会报错:
List的toArray方法强制转换_第1张图片
所以像这种情况就要用第二种形式来转换:
toArray(T[] t)方法返回一个类T的数组,这个数组包含了类T中的所有元素。
这个方法的特点是:如果数组t的长度(创建数组t的时候定义)能够装下整个List的数据的时候,所有数据会被放入数组t中。
例如:
List的toArray方法强制转换_第2张图片
如果数组t的长度不够长,那么就会返回一个新的数组。
例如:
List的toArray方法强制转换_第3张图片
两者返回的都是数组。

你可能感兴趣的:(数组)