Lesson 38 +10 XP

Java Enums

An enum is a special class that represents a fixed group of constants, like days of the week or colors.

Declaring an enum

Use the enum keyword and list the constants in uppercase:


java
enum Level {

### LOW,

### MEDIUM,

### HIGH
}

Using an enum in a switch


java
Level myVar = Level.MEDIUM;

switch(myVar) {
  case LOW:

### System.out.println("Low level");
    break;
  case MEDIUM:

### System.out.println("Medium level");
    break;
  case HIGH:

### System.out.println("High level");
    break;
}

Loop through an enum


java
for (Level myVar : Level.values()) {

### System.out.println(myVar);
}

The values() method returns an array of all enum constants.

Why use enums

  • Group related constants together.
  • Prevent invalid values, since only the listed constants are allowed.
  • Improve readability compared to magic numbers.

Enum vs class

An enum is like a class, but its constants are fixed. You cannot create new values beyond the ones declared.

TL;DR

  • Enums hold a fixed set of constants.
  • Constants are written in uppercase.
  • Use in switch statements and loops.