一.用枚举表述数据字典
1.代码:
package com.inspire.jdk.caculate;/** * Created by yaming * 用枚举表述常量数据字段 */public enum StateEnum { //使用构造方法创建对象,每一个都是StateEnum的实例 SUCCESS(1, "成功"), FAILED(0, "失败"); private int state; private String stateInfo; public int getState() { return state; }public String getStateInfo() { return stateInfo; } StateEnum(int state, String stateInfo){ this.state = state; this.stateInfo = stateInfo; } /** * 根据int类型的index,找到对应StateEnum * @param index * @return */ public static StateEnum stateOf(int index){ for (StateEnum state:values()){ if (state.getState()==index){ return state; } } return null; } /** * 根据int类型的index,找到对应的String的值 * @param index * @return */ public static String valuesOf(int index){ for (StateEnum state:values()){ if (state.getState()==index){ return state.getStateInfo(); } } return "null"; }}
2.java中的枚举类(enum)和java中的普通类(class)一样,只是预先定义了一系列的示例变量
如:public enum Color {// 每个变量都是 Color 的一个示例RED, YELLOW, BLUE;}
2.1 所以枚举内部直接就可以书写示例变量,如RED,YELLOW,BLUE.
2.2 枚举有一些自然获得的成员方法,Color.values()方法2.3 枚举类和普通类相似的一个依据就是,枚举也可以含有构造函数
3.总结:
枚举限制住了该类型的实例变量的个数和可能性,因为一个枚举的实例变量在定义该枚举时就确定了