黑马程序员技术交流社区

标题: 帮忙看看这个代码啥意思吧 [打印本页]

作者: 小洋人最happy    时间: 2012-12-4 10:46
标题: 帮忙看看这个代码啥意思吧

import java.util.*;
class CollectionsArray
{
public static void main(String[] args)
{
  ArrayList<String> al = new ArrayList<String>();
  al.add("abc1");
  al.add("abc2");
  al.add("abc3");
  String[] arr = al.toArray(new String[al.size()]);//什么意思
  System.out.println(Arrays.toString(arr));//什么意思
}
}


作者: 黑马_郑亮新    时间: 2012-12-4 11:00
  String[] arr = al.toArray(new String[al.size()]);//把集合变成指定的String[]数组,数组的长度为集合的长度;
System.out.println(Arrays.toString(arr));//把数组通过字符串的形式打印出来

作者: 古银平    时间: 2012-12-4 11:08
T> T[] toArray(T[] a)返回按适当顺序(从第一个元素到最后一个元素)包含列表中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。如果指定数组能容纳列表,则在其中返回该列表。否则,分配具有指定数组的运行时类型和此列表大小的新数组。
如果指定数组能容纳列表,并剩余空间(即数组的元素比列表的多),那么会将数组中紧随列表尾部的元素设置为 null。(只有 在调用者知道列表不包含任何 null 元素时此方法才能用于确定列表的长度)。

像 toArray() 方法一样,此方法充当基于数组的 API 与基于 collection 的 API 之间的桥梁。更进一步说,此方法允许对输出数组的运行时类型进行精确控制,在某些情况下,可以用来节省分配开销。

假定 x 是只包含字符串的一个已知列表。以下代码用来将该列表转储到一个新分配的 String 数组:

     String[] y = x.toArray(new String[0]);注意,toArray(new Object[0]) 和 toArray() 在功能上是相同的。

指定者:
接口 Collection<E> 中的 toArray
参数:
a - 要存储列表中元素的数组,如果它足够大的话;否则为此目的分配一个运行时类型相同的新数组。
返回:
包含列表中元素的数组

作者: 胡胜    时间: 2012-12-4 11:25
T> T[] toArray(T[] a)返回按适当顺序(从第一个元素到最后一个元素)包含列表中所有元素的数组;返回数组 ....




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2