Java AbstractSequentialList retainAll()方法及示例
java.util.AbstractSequentialList 类的 retainAll() 方法用于保留该列表中包含在指定集合中的所有元素。 语法
public boolean retainAll(Collection c)
参数: 该方法接受 集合c 作为参数,其中包含要从该列表中保留的元素。
返回值: 如果该列表因调用而发生变化,则该方法返回 true 。
异常: 如果该列表包含一个空元素,而指定的集合不允许空元素(可选),或者指定的集合为空,则该方法抛出 NullPointerException 。下面是说明retainAll()方法的例子。
例 1 :
// Java program to demonstrate
// retainAll() method for Integer value
import java.util.*;
public class GFG1 {
public static void main(String[] argv) throws Exception
{
try {
// Creating object of AbstractSequentialList<Integer>
AbstractSequentialList<Integer>
arrlist1 = new LinkedList<Integer>();
// Populating arrlist1
arrlist1.add(1);
arrlist1.add(2);
arrlist1.add(3);
arrlist1.add(4);
arrlist1.add(5);
// print arrlist1
System.out.println("AbstractSequentialList before "
+ "retainAll() operation : "
+ arrlist1);
// Creating another object of AbstractSequentialList<Integer>
AbstractSequentialList<Integer>
arrlist2 = new LinkedList<Integer>();
arrlist2.add(1);
arrlist2.add(2);
arrlist2.add(3);
// print arrlist2
System.out.println("Collection Elements"
+ " to be retained : "
+ arrlist2);
// Removing elements from arrlist
// specified in arrlist2
// using retainAll() method
arrlist1.retainAll(arrlist2);
// print arrlist1
System.out.println("AbstractSequentialList after "
+ "retainAll() operation : "
+ arrlist1);
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
}
}
输出
AbstractSequentialList before retainAll() operation : [1, 2, 3, 4, 5]
Collection Elements to be retained : [1, 2, 3]
AbstractSequentialList after retainAll() operation : [1, 2, 3]
例2: 对于NullPointerException
// Java program to demonstrate
// retainAll() method for Integer value
import java.util.*;
public class GFG1 {
public static void main(String[] argv) throws Exception
{
try {
// Creating object of AbstractSequentialList<Integer>
AbstractSequentialList<Integer>
arrlist1 = new LinkedList<Integer>();
// Populating arrlist1
arrlist1.add(1);
arrlist1.add(2);
arrlist1.add(3);
arrlist1.add(4);
arrlist1.add(5);
// print arrlist1
System.out.println("AbstractSequentialList before "
+ "retainAll() operation : "
+ arrlist1);
// Creating another object of AbstractSequentialList<Integer>
AbstractSequentialList<Integer>
arrlist2 = null;
// print arrlist2
System.out.println("Collection Elements"
+ " to be retained : "
+ arrlist2);
System.out.println("\nTrying to pass "
+ "null as a specified element\n");
// Removing elements from arrlist
// specified in arrlist2
// using retainAll() method
arrlist1.retainAll(arrlist2);
// print arrlist1
System.out.println("AbstractSequentialList after "
+ "retainAll() operation : "
+ arrlist1);
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
}
}
输出
AbstractSequentialList before retainAll() operation : [1, 2, 3, 4, 5]
Collection Elements to be retained : null
Trying to pass null as a specified element
Exception thrown : java.lang.NullPointerException
极客教程