Friday, November 21, 2025
HomeLanguagesJavaStack retainAll() method in Java with Example

Stack retainAll() method in Java with Example

The retainAll() method of java.util.Stack class is used to retain from this stack 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 stack.

Returns Value: This method returns true if this stack changed as a result of the call.

Exception: This method throws NullPointerException if this stack 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 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 Stack<Integer>
            Stack<Integer>
                stack1 = new Stack<Integer>();
  
            // Populating stack1
            stack1.add(1);
            stack1.add(2);
            stack1.add(3);
            stack1.add(4);
            stack1.add(5);
  
            // print stack1
            System.out.println("Stack before "
                               + "retainAll() operation : "
                               + stack1);
  
            // Creating another object of  Stack<Integer>
            Stack<Integer>
                stack2 = new Stack<Integer>();
            stack2.add(1);
            stack2.add(2);
            stack2.add(3);
  
            // print stack2
            System.out.println("Collection Elements"
                               + " to be retained : "
                               + stack2);
  
            // Removing elements from stack
            // specified in stack2
            // using retainAll() method
            stack1.retainAll(stack2);
  
            // print stack1
            System.out.println("Stack after "
                               + "retainAll() operation : "
                               + stack1);
        }
  
        catch (NullPointerException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}


Output:

Stack before retainAll() operation : [1, 2, 3, 4, 5]
Collection Elements to be retained : [1, 2, 3]
Stack after retainAll() operation : [1, 2, 3]

Example 2: For 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 Stack<Integer>
            Stack<Integer>
                stack1 = new Stack<Integer>();
  
            // Populating stack1
            stack1.add(1);
            stack1.add(2);
            stack1.add(3);
            stack1.add(4);
            stack1.add(5);
  
            // print stack1
            System.out.println("Stack before "
                               + "retainAll() operation : "
                               + stack1);
  
            // Creating another object of  Stack<Integer>
            Stack<Integer>
                stack2 = null;
  
            // print stack2
            System.out.println("Collection Elements"
                               + " to be retained : "
                               + stack2);
  
            System.out.println("\nTrying to pass "
                               + "null as a specified element\n");
  
            // Removing elements from stack
            // specified in stack2
            // using retainAll() method
            stack1.retainAll(stack2);
  
            // print stack1
            System.out.println("Stack after "
                               + "retainAll() operation : "
                               + stack1);
        }
  
        catch (NullPointerException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}


Output:

Stack 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
Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Dominic
32405 POSTS0 COMMENTS
Milvus
97 POSTS0 COMMENTS
Nango Kala
6781 POSTS0 COMMENTS
Nicole Veronica
11928 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11995 POSTS0 COMMENTS
Shaida Kate Naidoo
6907 POSTS0 COMMENTS
Ted Musemwa
7164 POSTS0 COMMENTS
Thapelo Manthata
6862 POSTS0 COMMENTS
Umr Jansen
6847 POSTS0 COMMENTS