- 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]
- 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]