在Java中,枚举(Enumeration)是一种特殊的数据类型,用于表示一组常量。Java 5及以上版本引入了枚举类型(Enum Type),通过关键字 enum
来定义。
以下是关于Java枚举的一些基本概念和用法:
1. 定义枚举类型:
enum Day {SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
}
在这个例子中,Day
是一个枚举类型,包含了一周中的每一天作为枚举常量。
2. 访问枚举常量:
Day today = Day.WEDNESDAY;
System.out.println(today); // 输出: WEDNESDAY
3. 使用枚举常量:
switch (today) {case MONDAY:System.out.println("It's Monday.");break;case WEDNESDAY:System.out.println("It's Wednesday.");break;// 其他枚举常量的处理default:System.out.println("It's not Monday or Wednesday.");
}
4. 枚举常量可以有属性和方法:
enum TrafficSignal {RED("STOP"), GREEN("GO"), YELLOW("SLOW DOWN");private String action;// 构造方法TrafficSignal(String action) {this.action = action;}// 方法public String getAction() {return action;}
}
5. 遍历枚举:
for (Day day : Day.values()) {System.out.println(day);
}
6. 实现接口:
枚举可以实现接口,每个枚举常量都可以提供不同的实现。
interface Shape {double getArea();
}enum Geometry implements Shape {CIRCLE {@Overridepublic double getArea() {return Math.PI * radius * radius;}},RECTANGLE {@Overridepublic double getArea() {return length * width;}};double radius;double length;double width;
}
枚举提供了类型安全、简洁和可读性强的常量定义,适用于表示一组相关的常量集合。在实际开发中,枚举常常用于定义状态、选项、命令等。