consentono di associare nomi simbolici a costanti numeriche

si cera un tipo di variabile che potrà contenere solamente un valore appartenente al set specificato nella definizione dell’enumunciato
e contemporaneamente avremo a disposizione anche i nomi simbolici da usare nella scrittura del programma

sintassi
public enum NOME_ENUM
{

VALORE1,
VALORE2,
VALORE3,
...
}
NOME_ENUM variabile;
variabile = NOME_ENUM.VALORE1;


esempio: giorno della settimana (→ Oggi è Giovedì)
public enum Giorno { LUNEDI, MARTEDI, MERCOLEDI, GIOVEDI, VENERDI, SABATO, DOMENICA };

public static void main(String[] args)
{

// scegliamo un valore
Giorno giornoDellaSettimana = Giorno.GIOVEDI;

// definiamo una logica
switch(giornoDellaSettimana)
{
case LUNEDI:
System.out.println("Oggi è Lunedì");
break;

case MARTEDI:
System.out.println("Oggi è Martedì");
break;

case MERCOLEDI:
System.out.println("Oggi è Mercoledì");
break;

case GIOVEDI:
System.out.println("Oggi è Giovedì");
break;

case VENERDI:
System.out.println("Oggi è Venerdì");
break;

case SABATO:
System.out.println("Oggi è Sabato");
break;

case DOMENICA:
System.out.println("Oggi è Domenica");
break;
}
}