在Java中使用示例的CopyOnWriteArrayList addAll()方法
boolean addAll(Collection c)
此方法用于将集合 c 识别出的所有元素附加到列表末尾,按集合迭代器返回的相同顺序。
参数: 该方法接受一个强制参数c,即包含要附加到列表末尾的元素的集合。
返回值: 该方法返回一个布尔值。如果集合正确插入列表,则返回true,否则返回false。
异常: 如果指定的元素为null,则此方法会抛出 NullPointerException。
// Java程序,演示
// CopyOnWriteArrayList.addAll(Collection c)
import java.io.*;
import java.util.concurrent.CopyOnWriteArrayList;
public class CopyOnWriteArrayListDemo {
public static void main(String args[])
{
// 创建一个空的数组列表1,其初始容量为5
CopyOnWriteArrayList<Integer> list1
= new CopyOnWriteArrayList<Integer>();
// 使用add()方法向列表中添加元素
list1.add(12);
list1.add(20);
list1.add(45);
// 打印list1中所有可用的元素
System.out.println("打印列表1:");
for (Integer number : list1)
System.out.println("数字 = " + number);
// 创建一个具有初始容量的空数组列表2
CopyOnWriteArrayList<Integer> list2
= new CopyOnWriteArrayList<Integer>();
// 使用add()方法向列表2中添加元素
list2.add(25);
list2.add(30);
list2.add(31);
list2.add(35);
// 让我们打印所有可用于列表2的元素
System.out.println("打印列表2:");
for (Integer number : list2)
System.out.println("数字 = " + number);
// 插入所有元素,list2将在list1之后打印
list1.addAll(list2);
System.out.println("打印所有元素");
// 让我们打印所有可用于list1的元素
for (Integer number : list1)
System.out.println("数字 = " + number);
}
}
打印列表1:
数字 = 12
数字 = 20
数字 = 45
打印列表2:
数字 = 25
数字 = 30
数字 = 31
数字 = 35
打印所有元素
数字 = 12
数字 = 20
数字 = 45
数字 = 25
数字 = 30
数字 = 31
数字 = 35
boolean addAll(int index, Collection c)
此方法是将一个集合的元素添加到另一个列表中。插入元素将从指定的索引开始。元素将按集合的迭代器返回的顺序添加。
参数:
index 是要插入集合元素的位置。
c 包含要附加到列表末尾的元素的集合。
返回值: 它的返回类型是布尔类型。如果集合在指定的索引处正确插入列表,则返回true,否则返回false。
异常:
如果指定的集合为null,则会引发 NullPointerException。
如果指定的索引超出范围,则会引发 IndexOutOfBoundsException。
// Java程序演示CopyOnWriteArrayList
// addAll(Collection c)
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.*;
public class CopyOnWriteArrayListDemo {
public static void main(String args[])
{
// 创建一个初始容量为5的空列表list1
CopyOnWriteArrayList<Integer> list
= new CopyOnWriteArrayList<Integer>();
// 使用add()方法向列表中添加元素
list.add(12);
list.add(20);
list.add(45);
// 打印列表list1中的所有元素
System.out.println("打印列表list1:");
for (Integer number : list)
System.out.println("数字 = " + number);
// 创建一个初始容量的空列表list2
CopyOnWriteArrayList<Integer> list2
= new CopyOnWriteArrayList<Integer>();
// 使用add()方法向列表list2中添加元素
list2.add(25);
list2.add(30);
list2.add(31);
list2.add(35);
// 打印列表list2中的所有元素
System.out.println("打印列表list2:");
for (Integer number : list2)
System.out.println("数字 = " + number);
// 将列表list2的所有元素插入到列表list1的第三个位置
list.addAll(2, list2);
System.out.println("打印所有元素");
// 打印列表list1中的所有元素
for (Integer number : list)
System.out.println("数字 = " + number);
}
}
打印列表list1:
数字 = 12
数字 = 20
数字 = 45
打印列表list2:
数字 = 25
数字 = 30
数字 = 31
数字 = 35
打印所有元素
数字 = 12
数字 = 20
数字 = 25
数字 = 30
数字 = 31
数字 = 35
数字 = 45
极客教程