Java 开发中经常使用到一些有限的常量,这些可以在Bean内部定义成一个 enum 类型,这样在维护时比较方便可控,那这里就简单记录一下 enum 的定义和用法,方便日后直接参考使用,懒人计划,呵呵... 好了,直接看代码...
1,含有enum类型的Java Bean定义
public class XXXBean { //其它bean变量,...省... //其它bean变量的getter,setter方法,...省... /** * 显示状态, enum枚举类型定义 */ public enum ShowStatus{ /** * 0, 不显示 */ Hide(0,"不显示"), /** * 1, 显示 */ Show(1,"显示"); private Integer code; //对应括号里面第一个值,即 0 或 1 private String description; //对应括号里面第二个值,即不显示 或 显示 //如果括号里还有其它定义的值,可定义相应的变量与之对应即可 //各个变量的getter,setter方法,注意这里是 public 公共的修饰符啊 public Integer getCode() { return code; } public void setCode(Integer code) { this.code = code; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } //enum 构造方法,注意这里是 private 私有的修饰符啊 private ShowStatus(Integer code, String description) { this.code = code; this.description = description; } //通过code,即 0 或 1 获取对应 enum 对象 public static ShowStatus getByCode(Integer code){ ShowStatus showStatus = null; for(int i=0; i<ShowStatus.values().length; i++){ showStatus = ShowStatus.values()[i]; if(code == showStatus.getCode()){ break; } } return showStatus; } } }
2,enum 类型的使用
//得到的是ShowStatus类型的 Hide 的整个enum 对象 ShowStatus v1 = XXXBean.Hide; //得到的是Hide,即 Hide 的 enum 对象的名称字面值而已 String v2 = XXXBean.Hide.name(); //这个是默认方法 //得到的是0,即 Hide的 enum 对象的code值: 0 int v3 = XXXBean.Hide.getCode(); //得到的是隐藏,即 Hide的 enum 对象的description值: 隐藏 String v4 = XXXBean.Hide.getDescription();
Java的 enum 枚举类型基本就是定义和使用,这个也是最常用的,当然还有其它的用法,欢迎拍砖一下...