list.toArray(new String[0])

list.toArray(new String[0])与list.toArray()的区别

  1. list.toArray(new String[0]):返回集合中所有元素的一个数组表示形式;返回的数组运行时类型和指定数组的运行类型相同.也就是说参数的类型也就是返回类型.
  2. toArray()是返回一个Object[],然后对对象进行拷贝;带参数的是根据参数数组类型,返回一个对应类型,长度和调用用对象长度相同的空数组.
    注意 如果参数中的数组容量大小大于所调用对象则按参数大小创建.
public static void ArrayListTest(){
	List<String> list = new ArrayList<>();
	list.add("");
	list.add("");
	list.add("");
	list.add("");
	
	String[] result = list.toArray(new String[0]); // 返回和参数相同类型,大小为list的大小 4
	String[] result = list.toArray(new String[6]); // 返回和参数相同类型,大小为list的大小 6,超出部分为null

 }

你可能感兴趣的:(java)