天天看点

使用枚举类型的值创建枚举类型

枚举类型中不仅可以声明枚举的名称,还可以加入附加的值如下式:

public static enum PushType{
		PUSH_TYPE_SYS("0"),
		PUSH_TYPE_CAMPUS("1"),
		PUSH_TYPE_USER("2");
		private String typeValue;
		PushType(String value){
			typeValue = value;
		}
		
		public String toString(){
			return typeValue;
		}
}
           

其中PUSH_TYPE_SYS称为枚举的Name,0则为枚举类型的Value,那如何才能根据枚举类型的value获取枚举类型的实例呢?

代码见下:

public static PushType getPushType(String value) {
			for (PushType type : PushType.values()) {
				if (type.toString().equals(value)) {
					return type;
				}
			}
			return PUSH_TYPE_USER;
		}
           

通过一个内部的遍历和value值的判断,即可返回枚举类型的实例。