Java 枚举类型(Enum)是一种特殊的类,用于表示固定数量的常量值。枚举类型的主要用途如下:
- 表示一组固定的常量值:枚举类型可以用于表示一组相关的常量值,例如星期、月份、颜色等。这使得代码更具可读性和可维护性。
public enum Weekday { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }
- 简化 switch 语句:当需要在 switch 语句中处理多个常量值时,使用枚举类型可以使代码更简洁。
Weekday day = Weekday.MONDAY; switch (day) { case SUNDAY: System.out.println("Sunday"); break; case MONDAY: System.out.println("Monday"); break; // ... }
- 作为方法参数和返回值:枚举类型可以作为方法的参数和返回值,使得方法更具通用性和可读性。
public enum Size { SMALL, MEDIUM, LARGE } public Size getBestSize(int width, int height) { // ... }
- 实现单例模式:枚举类型可以实现单例模式,确保一个类只有一个实例。
public enum Singleton { INSTANCE; private String message; public void setMessage(String message) { this.message = message; } public String getMessage() { return message; } }
- 用于状态机:枚举类型可以用于表示状态机的状态,使得状态转换更具可读性。
public enum State { START, RUNNING, PAUSED, STOPPED } public class StateMachine { private State state; public void setState(State state) { this.state = state; } // ... }
总之,Java 枚举类型提供了一种简洁、可读性强的方式来表示和处理一组固定的常量值。