EnumSet in Java
Pre-requisite: Enum in Java
EnumSet is one of the specialized implementation of Set interface for use with the enumeration type. Few important features of EnumSet are as follows:
- It extends AbstractSet and implements Set Interface in Java.
- EnumSet class is a member of the Java Collections Framework & is not synchronized.
- It’s a high performance set implementation, much faster than HashSet.
- All of the elements in an enum set must come from a single enumeration type that is specified when the set is created either explicitly or implicitly.
Declaration:
public abstract class EnumSet<E extends Enum<E>>
Here, E specifies the elements. E must extend Enum, which enforces the requirement that the elements must be of specified enum type.
Below program illustrates a few basic functions of EnumSet:
// Java program to illustrate working of EnumSet and // its functions. import java.util.EnumSet; enum Gfg { CODE, LEARN, CONTRIBUTE, QUIZ, MCQ }; public class Example { public static void main(String[] args) { // Creating a set EnumSet<Gfg> set1, set2, set3, set4; // Adding elements set1 = EnumSet.of(Gfg.QUIZ, Gfg.CONTRIBUTE, Gfg.LEARN, Gfg.CODE); set2 = EnumSet.complementOf(set1); set3 = EnumSet.allOf(Gfg.class); set4 = EnumSet.range(Gfg.CODE, Gfg.CONTRIBUTE); System.out.println("Set 1: " + set1); System.out.println("Set 2: " + set2); System.out.println("Set 3: " + set3); System.out.println("Set 4: " + set4); } } |
Set 1: [CODE, LEARN, CONTRIBUTE, QUIZ] Set 2: [MCQ] Set 3: [CODE, LEARN, CONTRIBUTE, QUIZ, MCQ] Set 4: [CODE, LEARN, CONTRIBUTE]
Methods in EnumSet:
- EnumSet of(E e1): Creates an enum set initially containing the specified elements.
- EnumSet of(E e11, E el2): Creates an enum set initially containing the specified elements.
- EnumSet of(E e11, E el2, Eel3): Creates an enum set initially containing the specified elements.
- EnumSet of(E e11, E el2, Eel3,E el4….): Creates an enum set initially containing the specified elements.
- EnumSet of(E e1, E rest…): Creates an enum set initially containing the specified elements.
- EnumSet complementOf(EnumSet s): Creates an enum set with the same element type as the specified enum set, initially containing all the elements of this type that are not contained in the specified set.
- EnumSet allOf(Class elementType): Creates an enum set containing all of the elements in the specified element type.
- EnumSet range(E from, E to): Creates an enum set initially containing all of the elements in the range defined by the two specified endpoints.
- EnumSet copyof(): The method is used to copy all of the contents from a collection to a new enum set.
- EnumSet copyof(EnumSet s): The method is used to copy all of the contents from an existing EnumSet to a new enum set.
- EnumSet clone(): The method is used to return a shallow copy of the existing or this set.
- EnumSet noneOf(): The method is used to create a null set.
This article is contributed by Pratik Agarwal. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Recommended Posts:
- EnumSet of() Method in Java
- EnumSet copyOf() Method in Java
- EnumSet noneOf() Method in Java
- EnumSet range() Method in Java
- EnumSet allof() Method in Java
- EnumSet complementOf() Method in Java
- EnumSet clone() Method in Java
- Java.util.LinkedList.poll(), pollFirst(), pollLast() with examples in Java
- Java lang.Long.lowestOneBit() method in Java with Examples
- Java lang.Long.reverse() method in Java with Examples
- Java.util.Collections.rotate() Method in Java with Examples
- Java lang.Long.byteValue() method in Java with Examples
- Java lang.Long.highestOneBit() method in Java with Examples
- Java lang.Long.numberOfLeadingZeros() method in Java with Examples
- Java.util.concurrent.RecursiveTask class in Java with Examples
Improved By : Chinmoy Lenka



