EnumSet complementOf() Method in Java (original) (raw)
Last Updated : 03 Oct, 2018
The java.util.EnumSet.complementOf(Enum_Set) method is used to create an EnumSet containing elements of the same type as that of the specified Enum_Set, with the values present in the enum but other than those contained in the specified Enum_Set.Syntax:
New_Enum_Set = EnumSet.complementOf(EnumSet)
Parameters: The method accepts one parameter Enum_Set whose values are to be neglected while populating the values into the new complemented enum set.Return Values: The method does not return any values.Exceptions: The method throws NullPointerException if the value Enum_Set is NULL. Below programs illustrate the working of java.util.EnumSet.complementOf() method:Program 1:
Java `
// Java program to demonstrate complementOf() method import java.util.*;
// Creating an enum of GFG type enum GFG { Welcome, To, The, World, of, Geeks } ;
public class Enum_Set_Demo {
public static void main(String[] args)
{
// Creating an empty EnumSet
// Getting elements from GFG
EnumSet<GFG> e_set = EnumSet.of(GFG.To, GFG.Welcome,
GFG.Geeks);
// Displaying the empty EnumSet
System.out.println("Initial set: " + e_set);
// Cloning the set
EnumSet<GFG> final_set = EnumSet.complementOf(e_set);
// Displaying the final set
System.out.println("The updated set is:" + final_set);
}
}
`
Output:
Initial set: [Welcome, To, Geeks] The updated set is:[The, World, of]
Program 2:
Java `
// Java program to demonstrate complementOf() method import java.util.*;
// Creating an enum of CARS type enum CARS { RANGE_ROVER, MUSTANG, CAMARO, AUDI, BMW } ;
public class Enum_Set_Demo {
public static void main(String[] args)
{
// Creating an empty EnumSet
// Getting all elements from CARS
EnumSet<CARS> e_set = EnumSet.allOf(CARS.class);
// Displaying the empty EnumSet
System.out.println("Initial set: " + e_set);
// Cloning the set
EnumSet<CARS> final_set = EnumSet.complementOf(e_set);
// Displaying the final set
System.out.println("The updated set is:" + final_set);
}
}
`
Output:
Initial set: [RANGE_ROVER, MUSTANG, CAMARO, AUDI, BMW] The updated set is:[]