Java中的CopyOnWriteArraySet addAll()方法示例
CopyOnWriteArraySet方法中的 addAll() 方法将指定集合中所有不存在于该集合中的元素添加到此CopyOnWriteArraySet中。该方法的结果是两个集合的并集。
句法:
public boolean addAll(Collection<E> c)
参数: 此方法接受一个名为c的参数,该参数是包含要添加到此集合中的元素的集合。
返回值: 如果CopyOnWriteArraySet被更改,则此方法返回一个布尔值,例如true。否则此方法返回false。
异常: 如果指定的集合为null,则此方法会抛出 NullPointerException 。
以下程序说明了CopyOnWriteArrayList类的addAll()函数:
程序1: 在下面的程序中,将指定集合元素添加到CopyOnWriteArraySet中。由于50在两个集合中都存在,因此只添加了一次。
// Java程序,演示
// Java中的CopyOnWriteArraySet addall()方法
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// 创建CopyOnWriteArraySet对象
CopyOnWriteArraySet<Integer> ArrSet
= new CopyOnWriteArraySet<Integer>();
// 添加元素
ArrSet.add(10);
ArrSet.add(20);
ArrSet.add(30);
ArrSet.add(50);
// 打印CopyOnWriteArraySet
System.out.println("CopyOnWriteArraySet: "
+ ArrSet);
// 创建ArrayList对象
ArrayList<Integer> Arrlist
= new ArrayList<Integer>();
// 添加元素
Arrlist.add(50);
Arrlist.add(60);
Arrlist.add(70);
Arrlist.add(80);
// 打印ArrayList
System.out.println("ArrayList: "
+ Arrlist);
// 将Arraylist中的所有元素添加到CopyOnWriteArraySet中
ArrSet.addAll(Arrlist);
// 打印更新后的CopyOnWriteArraySet
System.out.println("Updated CopyOnWriteArraySet: "
+ ArrSet);
}
}
CopyOnWriteArraySet: [10, 20, 30, 50]
ArrayList: [50, 60, 70, 80]
Updated CopyOnWriteArraySet: [10, 20, 30, 50, 60, 70, 80]
程序2: 展示NullpointerException。
// Java程序,演示
// Java中的CopyOnWriteArraySet addall()方法
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// 创建CopyOnWriteArraySet对象
CopyOnWriteArraySet<Integer> ArrSet
= new CopyOnWriteArraySet<Integer>();
// 添加元素
ArrSet.add(10);
ArrSet.add(20);
ArrSet.add(30);
ArrSet.add(50);
// 打印CopyOnWriteArraySet
System.out.println("CopyOnWriteArraySet: "
+ ArrSet);
// 创建ArrayList对象
ArrayList<Integer> Arrlist
= new ArrayList<Integer>();
try {
// 将null添加到CopyOnWriteArraySet中
// 这将抛出NullPointerException
ArrSet.addAll(null);
}
catch (Exception e) {
System.out.println(e);
}
}
}
CopyOnWriteArraySet: [10, 20, 30, 50]
java.lang.NullPointerException
极客教程