Enum je výčtový typ. Představuje omezený výčet hodnot. Enum nemusí představovat pouze název, ale též hodnoty.
Jednoduchý bezparametrický enum.
public enum Country { CZ, SK, EN }
Volání
System.out.println(Country.CZ.name());
Výsledek
CZ
Enum s jením parametrem
public enum Country { CZ(1), SK(2), EN(3); private int code; Country(int code) { this.code = code; } public int getCode() { return code; } }
Volání
Country sk = Country.SK; System.out.println(sk.name()); System.out.println(sk.getCode());
Výsledek
SK 2
Enum s několika paramatery
public enum Country { CZ(1, "Česko", "Česká republika"), SK(2, "Slovensko", "Slovenská republika"), EN(3, "Velká Britanie", "Spojené království Velké Británie a Severního Irska"); private int code; private String popis; private String popisDlouhy; Country(int code, String popis, String popisDlouhy) { this.code = code; this.popis = popis; this.popisDlouhy = popisDlouhy; } public int getCode() { return code; } public String getPopis() { return popis; } public String getPopisDlouhy() { return popisDlouhy; } }
Volání
Country en = Country.EN; System.out.println(en.name()); System.out.println(en.getCode()); System.out.println(en.getPopis()); System.out.println(en.getPopisDlouhy());
Výsledek
EN 3 Velká Britanie Spojené království Velké Británie a Severního Irska