package com.wen;
import java.util.HashMap;
import java.util.Map;
public enum Color {
RED(10), GREEN(20), YELLOW(30), BLUE(40);
private int code;
Color(int code) {
this.code = code;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
private static Map<Integer, Color> colorByCode = new HashMap<>();
static {
for(Color color : Color.values()){
colorByCode.put(color.getCode(), color);
}
}
public static Color getByCode(int code){
return colorByCode.get(code);
}
}
注意枚举的变量以分号结尾,想要给枚举变量赋值需要定义构造函数,code为枚举的值