The retainAll() method of java.util.AbstractSequentialList class is used to retain from this list all of its elements that are contained in the specified collection. Syntax:
public boolean retainAll(Collection c)
Parameters: This method takes collection c as a parameter containing elements to be retained from this list. Returns Value: This method returns true if this list changed as a result of the call. Exception: This method throws NullPointerException if this list contains a null element and the specified collection does not permit null elements (optional), or if the specified collection is null. Below are the examples to illustrate the retainAll() method. Example 1:Â
Java
// 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]
Example 2: For NullPointerExceptionÂ
Java
// 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
