定义一个交通灯枚举,包含红灯、绿灯、黄灯,需要有获得下一个灯的方法,例如:红灯获取下一个灯是绿灯,绿灯获取下一个灯是黄灯。
------最佳解决方案--------------------------------------------------------
定义枚举
public enum Lamp {
RED,GREEN,YELLOW;
public Lamp getNext() {
switch (this) {
case RED:
return GREEN;
case GREEN:
return YELLOW;
default:
return null;
}
}
}
调用
Lamp lamp = Lamp.RED;
System.out.println(lamp); //输出:RED
System.out.println(lamp.getNext()); //输出:GREEN
System.out.println(lamp.getNext().getNext()); //输出:YELLOW