- Java.util Package Classes
- Java.util - Home
- Java.util - ArrayDeque
- Java.util - ArrayList
- Java.util - Arrays
- Java.util - BitSet
- Java.util - Calendar
- Java.util - Collections
- Java.util - Currency
- Java.util - Date
- Java.util - Dictionary
- Java.util - EnumMap
- Java.util - EnumSet
- Java.util - Formatter
- Java.util - GregorianCalendar
- Java.util - HashMap
- Java.util - HashSet
- Java.util - Hashtable
- Java.util - IdentityHashMap
- Java.util - LinkedHashMap
- Java.util - LinkedHashSet
- Java.util - LinkedList
- Java.util - ListResourceBundle
- Java.util - Locale
- Java.util - Observable
- Java.util - PriorityQueue
- Java.util - Properties
- Java.util - PropertyPermission
- Java.util - PropertyResourceBundle
- Java.util - Random
- Java.util - ResourceBundle
- Java.util - ResourceBundle.Control
- Java.util - Scanner
- Java.util - ServiceLoader
- Java.util - SimpleTimeZone
- Java.util - Stack
- Java.util - StringTokenizer
- Java.util - Timer
- Java.util - TimerTask
- Java.util - TimeZone
- Java.util - TreeMap
- Java.util - TreeSet
- Java.util - UUID
- Java.util - Vector
- Java.util - WeakHashMap
- Java.util Package Extras
- Java.util - Interfaces
- Java.util - Exceptions
- Java.util - Enumerations
- Java.util Useful Resources
- Java.util - Useful Resources
- Java.util - Discussion
Java EnumSet copyOf() Method
Description
The Java EnumSet copyOf(EnumSet<E> s) method creates an enum set with the same element type as the specified enum set.It contains the same elements (if any).
Declaration
Following is the declaration for java.util.EnumSet.copyOf() method
public static <E extends Enum<E>> EnumSet<E> copyOf(EnumSet<E> s)
Parameters
s − the enum set from which to initialize this enum set.
Return Value
This method does not return any value.
Exception
NullPointerException − if s is null
Getting Copy of EnumSet Example
The following example shows the usage of Java EnumSet copyOf(EnumSet) method to populate the EnumSet instance. We've created a enum Numbers. Then a EnumSet instance is created using a enum value. Using copyOf(EnumSet) method, enumSet is populated with values of enumSet and resulted enumSet is printed.
package com.tutorialspoint; import java.util.EnumSet; public class EnumSetDemo { // create an enum public enum Numbers { ONE, TWO, THREE, FOUR, FIVE }; public static void main(String[] args) { // create a set that contains all Numbers class EnumSet<Numbers> set1 = EnumSet.allOf(Numbers.class); // print set1 System.out.println("Set1:" + set1); // create a second set which is a copy of set1 EnumSet<Numbers> set2 = EnumSet.copyOf(set1); // print the new set System.out.println("Set2:" + set2); } }
Output
Let us compile and run the above program, this will produce the following result −
Set1:[ONE, TWO, THREE, FOUR, FIVE] Set2:[ONE, TWO, THREE, FOUR, FIVE]
Getting Copy of EnumSet of Enum with Value Example
The following example shows the usage of Java EnumSet copyOf(EnumSet) method to populate the EnumSet instance. We've created a enum Numbers. Then a EnumSet instance is created using a enum value. Using copyOf(EnumSet) method, enumSet is populated with values of enumSet and resulted enumSet is printed.
package com.tutorialspoint; import java.util.EnumSet; public class EnumSetDemo { // create an enum public enum Number { ONE("1"), TWO("2"), THREE("3"), FOUR("4"), FIVE("5"); // instance variable for enum private String value; public String getValue() { return this.value; } // constructor should be private or protected private Number(String value) { this.value = value; } @Override public String toString() { return this.name() +"(" + this.value + ")"; } }; public static void main(String[] args) { // create a set that contains all Numbers class EnumSet<Number> set1 = EnumSet.allOf(Number.class); // print set1 System.out.println("Set1:" + set1); // create a second set which is a copy of set1 EnumSet<Number> set2 = EnumSet.copyOf(set1); // print the new set System.out.println("Set2:" + set2); } }
Output
Let us compile and run the above program, this will produce the following result −
Set1:[ONE(1), TWO(2), THREE(3), FOUR(4), FIVE(5)] Set2:[ONE(1), TWO(2), THREE(3), FOUR(4), FIVE(5)]