我想知道,这是一种将列表转换为数组的推荐方法,因为这两种方法似乎都运行正常。
从Converting 'ArrayList<String> to 'String[]' in Java开始,我看到推荐new String[list.size()]
方式,但我不确定原因。
list.toArray(new String[0]);
list.toArray(new String[list.size()]);
答案 0 :(得分:6)
如果传递大小为0的数组,toArray()
将需要使用反射来创建相同类型的新数组实例。
那很慢。
如果你传递一个正确大小的数组,它可以简单地使用你传递的数组实例,所以它不需要做任何额外的工作。