Collection.toArray() 和 Collection.toArray(Object obj[]) 之间的区别

2024-03-22

根据 toArray() 的 java 文档 返回一个包含此集合中所有元素的数组。

和 toArray(Object obj[])。 返回一个包含该集合中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。

第一个 toArray() 我理解,但第二个 toArray(Object obj[]) 我无法理解。请用示例解释。


一种是通用的,另一种则不是。toArray()将返回Object[] while toArray(T[])将返回一个类型的数组T[].

Sample:

public static void main(String[] args) {
    Object[] baseArray = new ArrayList<String>().toArray();
    System.out.println(baseArray.getClass().getCanonicalName());

    String[] improvArray = new ArrayList<String>().toArray(new String[5]);
    System.out.println(improvArray.getClass().getCanonicalName());
}

Output:

java.lang.Object[]
java.lang.String[]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Collection.toArray() 和 Collection.toArray(Object obj[]) 之间的区别 的相关文章

随机推荐