Enum in Java is a data type that contains a fixed set of constants. A Java enum type is a special kind of Java class. An enum can contain constants, methods, etc.
Given below is a demonstration of how to declare an enum:
Java
public enum season {
Spring,
Summer,
Monsoon,
Autumn,
Winter
}
|
Iterate over Enum Values: There are many ways to iterate over enum values:
- Iterate Using forEach()
- Iterate Using for Loop
- Iterate Using java.util.stream
Iterate Using forEach(): The forEach() method works on list or set. For using forEach() method, convert enum into list or set.
Conversion of enum to set and applying forEach has been shown below:
EnumSet.allOf(seasons.class)
.forEach(season -> System.out.println(season));
Conversion of enum to list and applying forEach has been shown below:
Arrays.asList(seasons.values()).
forEach(season -> System.out.println(season));
The below program illustrate the iteration over enums using forEach():
Java
import java.util.Arrays;
import java.util.EnumSet;
public class GFG {
public enum seasons {
Spring,
Summer,
Monsoon,
Autumn,
Winter
}
public static void main(String[] args)
{
EnumSet.allOf(seasons. class )
.forEach(season -> System.out.println(season));
Arrays.asList(seasons.values())
.forEach(season -> System.out.println(season));
}
}
|
Output
Spring
Summer
Monsoon
Autumn
Winter
Spring
Summer
Monsoon
Autumn
Winter
Iterate Using for Loop: The static values() method of java.lang. Enum class gives an array of enum values. After getting an array of enum values iteration over the array can be done using for loop.
Below program illustrate the iteration over enum using for loop:
Java
public class GFG {
public enum seasons {
Spring,
Summer,
Monsoon,
Autumn,
Winter
}
public static void main(String[] args)
{
for (seasons s : seasons.values()) {
System.out.println(s);
}
}
}
|
Output
Spring
Summer
Monsoon
Autumn
Winter
Iterate Using java.util.stream: Iteration over enum can also be done using java.util.stream class. Create the stream of enum.values() using Stream.of() method by passing eum.values() at parameter to function.
The below program illustrates the iteration over enum using java. util.stream:
Java
import java.util.stream.Stream;
public class GFG {
public enum seasons {
Spring,
Summer,
Monsoon,
Autumn,
Winter
}
public static void main(String[] args)
{
Stream.of(seasons.values())
.forEach(System.out::println);
}
}
|
Output
Spring
Summer
Monsoon
Autumn
Winter
Reference: https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
05 Mar, 2021
Like Article
Save Article