什么是枚举类?
枚举类是JDK1.5以后出现的一种新特性,枚举类可以定义一组确定的、有限的、同类型对象。如季节(春夏秋冬)、星期(周一…周日)等。
枚举类的定义
- 自定义枚举类(1.5以前)
/**
* 在线状态类
*/
class State {
/**
* 头像颜色
*/
private final String color;
public static final State ONLINE = new State("green");
public static final State OFFLINE = new State("gray");
public static final State BUSY = new State("red");
public State(String color) {
this.color = color;
}
public String getColor() {
return color;
}
@Override
public String toString() {
return "State{" +
"color='" + color + '\'' +
'}';
}
}
- 使用Enum定义(1.5之后)
public enum State {
/**在线*/
ONLINE("green"),
/**下线*/
OFFLINE("gray"),
/**忙碌*/
BUSY("red");
private final String color;
State(String color) {
this.color = color;
}
public String getColor() {
return color;
}
}
枚举类的使用
public static void main(String[] args){
System.out.println(State.BUSY);
System.out.println(State.BUSY.getColor());
System.out.println(State.valueOf("BUSY"));
System.out.println("**************");
State[] values = State.values();
for (State value : values) {
System.out.println(value);
}
}
运行结果:
BUSY
red
BUSY
ONLINE OFFLINE BUSY

2920

被折叠的 条评论
为什么被折叠?



