Open In App

ConcurrentSkipListSet removeAll() method in Java

Improve
Improve
Like Article
Like
Save
Share
Report

The removeAll() method of java.util.concurrent.ConcurrentSkipListSet is an in-built function in Java which returns removes from this set all of its elements that are contained in the specified collection. If the specified collection is also a set, this operation effectively modifies this set so that its value is the asymmetric set difference of the two sets.

Syntax:

public boolean removeAll(Collection c)

Parameter: The function accepts a single parameter c

Return Value: The function returns true if this set changed as a result of the call.

Exception: The function throws the following exceptions:

  • ClassCastException – if the types of one or more elements in this set are incompatible with the specified collection
  • NullPointerException – if the specified collection or any of its elements are null
  • Below programs illustrate the ConcurrentSkipListSet.removeAll() method:

    Program 1:




    // Java program to demonstrate removeAll()
    // method of ConcurrentSkipListSet
      
    import java.util.concurrent.*;
    import java.util.ArrayList;
    import java.util.List;
      
    class ConcurrentSkipListSetremoveAllExample1 {
        public static void main(String[] args)
        {
      
            // Initializing the List
            List<Integer> list = new ArrayList<Integer>();
      
            // Adding elements in the list
            for (int i = 1; i <= 10; i += 2)
                list.add(i);
      
            // Contents of the list
            System.out.println("Contents of the list: " + list);
      
            // Initializing the set
            ConcurrentSkipListSet<Integer>
                set = new ConcurrentSkipListSet<Integer>();
      
            // Adding elements in the set
            for (int i = 1; i <= 10; i++)
                set.add(i);
      
            // Contents of the set
            System.out.println("Contents of the set: " + set);
      
            // Remove all elements from the set which are in the list
            set.removeAll(list);
      
            // Contents of the set after removal
            System.out.println("Contents of the set after removal: "
                               + set);
        }
    }

    
    

    Output:

    Contents of the list: [1, 3, 5, 7, 9]
    Contents of the set: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    Contents of the set after removal: [2, 4, 6, 8, 10]
    

    Program 2: Program to show NullPOinterException in removeAll().




    // Java program to demonstrate removeAll()
    // method of ConcurrentSkipListSet
      
    import java.util.concurrent.*;
    import java.util.ArrayList;
    import java.util.List;
      
    class ConcurrentSkipListSetremoveAllExample1 {
        public static void main(String[] args)
        {
      
            // Initializing the set
            ConcurrentSkipListSet<Integer>
                set = new ConcurrentSkipListSet<Integer>();
      
            // Adding elements in the set
            for (int i = 1; i <= 10; i++)
                set.add(i);
      
            // Contents of the set
            System.out.println("Contents of the set: " + set);
      
            try {
                // Remove all elements from the set which are null
                set.removeAll(null);
            }
            catch (Exception e) {
                System.out.println("Exception: " + e);
            }
        }
    }

    
    

    Output:

    Contents of the set: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    Exception: java.lang.NullPointerException
    

    Reference:

    https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentSkipListSet.html#removeAll-java.util.Collection-



    Last Updated : 26 Nov, 2018
    Like Article
    Save Article
    Previous
    Next
    Share your thoughts in the comments
    Similar Reads