Java AbstractSet removeAll()方法及示例
Java AbstractSet类的 removeAll() 方法是用来从这个集合中删除所有包含在指定集合中的元素。
语法
public boolean removeAll(Collection c)
参数: 该方法接受集合c作为参数,包含要从这个集合中移除的元素。
返回值: 如果这个集合在调用后发生了变化,该方法返回true。
异常: 该方法抛出三种类型的异常。
- UnsupportedOperationException – 如果这个集合不支持该操作,就会抛出这个异常。
- ClassCastException – 当这个集合的一个元素的类别与指定的集合不兼容时,会抛出这个异常。
- NullPointerException – 当这个集合包含一个空元素,而指定的集合不允许有空元素,或者集合是空的,就会抛出这个问题。
下面是说明removeAll()方法的例子。
程序1 :
// Java program to demonstrate
// removeAll() method for Integer value
import java.util.*;
public class GFG1 {
public static void main(String[] args) throws Exception
{
try {
// Creating object of AbstractSet<Integer>
AbstractSet<Integer>
abs_set = new TreeSet<Integer>();
// Populating abs_set
abs_set.add(1);
abs_set.add(2);
abs_set.add(3);
abs_set.add(4);
abs_set.add(5);
// print abs_set
System.out.println("AbstractSet before "
+ "removeAll() operation : "
+ abs_set);
// Creating another object of ArrayList<Integer>
Collection<Integer>
arrlist2 = new ArrayList<Integer>();
arrlist2.add(1);
arrlist2.add(2);
arrlist2.add(3);
// print arrlist2
System.out.println("Collection Elements"
+ " to be removed : "
+ arrlist2);
// Removing elements from AbstractSet
// specified in arrlist2
// using removeAll() method
abs_set.removeAll(arrlist2);
// print arrlist1
System.out.println("AbstractSet after "
+ "removeAll() operation : "
+ abs_set);
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
}
}
输出。
AbstractSet before removeAll() operation : [1, 2, 3, 4, 5]
Collection Elements to be removed : [1, 2, 3]
AbstractSet after removeAll() operation : [4, 5]
例2: 对于NullPointerException
// Java program to demonstrate
// removeAll() method for Integer value
import java.util.*;
public class GFG1 {
public static void main(String[] args) throws Exception
{
try {
// Creating object of AbstractSet<Integer>
AbstractSet<Integer>
abs_set = new TreeSet<Integer>();
// Populating abs_set
abs_set.add(1);
abs_set.add(2);
abs_set.add(3);
abs_set.add(4);
abs_set.add(5);
// print abs_set
System.out.println("AbstractSet before "
+ "removeAll() operation : "
+ abs_set);
// Creating another object of ArrayList<Integer>
Collection<Integer>
arrlist2 = new ArrayList<Integer>();
arrlist2 = null;
// print arrlist2
System.out.println("Collection Elements"
+ " to be removed : "
+ arrlist2);
// Removing elements from AbstractSet
// specified in arrlist2
// using removeAll() method
abs_set.removeAll(arrlist2);
// print arrlist1
System.out.println("AbstractSet after "
+ "removeAll() operation : "
+ abs_set);
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
}
}
输出。
AbstractSet before removeAll() operation : [1, 2, 3, 4, 5]
Collection Elements to be removed : null
Exception thrown : java.lang.NullPointerException
极客教程