Open In App

EnumSet of() Method in Java

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report
  1. The java.util.EnumSet.of(E ele1, E ele2, E ele3, …) method in Java is used to create an enum set initially containing the specified elements in the parameters. When multiple items are added at the same time the elements are pushed down the set as the new elements are added. When different elements are added at different time or iteration, the old elements get replaced.

    Syntax:

    Enum_Set = EnumSet.of(E ele1, E ele2, E ele3, ...)

    Parameters: The method can take multiple parameters as many as present in the enum.

    Return Values: The method returns an enum set initially containing the specified elements passed through the parameter.

    Exceptions: The method throws NullPointerException if any element passed is NULL.

    Below programs illustrate the working of java.util.EnumSet.of() method:
    Program 1: Adding one element at a time replaces the previous element.




    // Java program to demonstrate range() 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 EnumSet
            EnumSet<GFG> e_set;
      
            // Adding elements
            e_set = EnumSet.of(GFG.The);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
      
            // Adding elements
            e_set = EnumSet.of(GFG.Geeks);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
      
            // Adding elements
            e_set = EnumSet.of(GFG.Welcome);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
        }
    }

    
    

    Output:

    The enum set is: [The]
    The enum set is: [Geeks]
    The enum set is: [Welcome]
    

    Program 2: Adding two elements at the same time.




    // Java program to demonstrate range() 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 EnumSet
            EnumSet<GFG> e_set;
      
            // Adding elements
            e_set = EnumSet.of(GFG.The, GFG.Geeks);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
      
            // Adding elements
            e_set = EnumSet.of(GFG.Geeks, GFG.Welcome);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
      
            // Adding elements
            e_set = EnumSet.of(GFG.of, GFG.World);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
        }
    }

    
    

    Output:

    The enum set is: [The, Geeks]
    The enum set is: [Welcome, Geeks]
    The enum set is: [World, of]
    

    Program 3: Adding multiple elements at the same time.




    // Java program to demonstrate range() 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 EnumSet
            EnumSet<GFG> e_set;
      
            // Adding 2 elements
            e_set = EnumSet.of(GFG.The, GFG.Geeks);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
      
            // Adding 3 elements
            e_set = EnumSet.of(GFG.The, GFG.Geeks, GFG.Welcome);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
      
            // Adding 4 elements
            e_set = EnumSet.of(GFG.Geeks, GFG.Welcome,
                               GFG.of, GFG.World);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
      
            // Adding 5 elements
            e_set = EnumSet.of(GFG.Welcome, GFG.To, GFG.The,
                               GFG.of, GFG.World, GFG.Geeks);
      
            // Displaying the updated set
            System.out.println("The enum set is: " + e_set);
        }
    }

    
    

    Output:

    The enum set is: [The, Geeks]
    The enum set is: [Welcome, The, Geeks]
    The enum set is: [Welcome, World, of, Geeks]
    The enum set is: [Welcome, To, The, World, of, Geeks]
    
  2. The java.util.EnumSet.of(E_first, E_rest) is used to create an enum set initially containing all the specified elements. This factory, whose parameter list uses the var_args feature, can also be used to create an enum set initially containing an arbitrary number of elements, but it comes with a disadvantage of making the program to run slower than the overloadings that do not use var_args.
    Syntax:

    public static <E extends Enum<E>> EnumSet<E> of(E_first, E_rest)

    Parameters: The method takes two parameters:

    • E_first: This is of enum type and refers to the element that the set is to contain initially.
    • E_rest: This is also of enum type and refers to the rest of the elements the set needs to contain initially.

    Return Values: The method returns an enum set initially containing the specified elements passed through the parameters.

    Exceptions: The method throws NullPointerException if any element passed is NULL.

    Below program illustrates the working of java.util.EnumSet.of(E_first, E_rest) method:




    // Java program to demonstrate of() 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 the ist that will be used as args
          GFG[] listing = {GFG.Welcome, GFG.The, 
                           GFG.World, GFG.Geeks};
      
          // Calling the other main function
          other_main(listing);
       }
      
       // The other_main.
       public static void other_main(GFG[] other_args) {
      
          // Creating the set
          EnumSet<GFG> e_set;
      
          // Adding the first element and the other_args
          e_set = EnumSet.of(GFG.Welcome, other_args);
      
          // Displaying the e_set
          System.out.println("Set: " + e_set);
       }
    }

    
    

    Output:

    Set: [Welcome, The, World, Geeks]
    


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