方法实现如下:

 public boolean addAll(Collection c) {
Object[] a = c.toArray();
int numNew = a.length;
ensureCapacity(size + numNew); // Increments modCount
System.arraycopy(a, 0, elementData, size, numNew);
size += numNew;
return numNew != 0;
}

  通过第1行参数可知,该方法参数是Collection,即不仅可以加入List,还可以加入Set

  通过第2行可知如果传入的集合为null报错,即参数不可以为null,使用时要先进行非null判断

  通过第5行可知新加的集合是加入到原List的尾部

  通过第7行可知如果新加的集合长度不为0,那么返回true

05-11 14:46