建立枚举java
public enum MessageTypeEnum { // 类型:0.通常消息,1.公告消息,2交易消息,3.活动消息,4.其余消息 type_general("通常消息", "0"), type_ann("公告消息", "1"), type_trading("交易消息", "2"), type_activity("活动消息", "3"), type_other("其余消息", "4"); }
获取对象 建立实体类ide
// 成员变量 private final String name; private final String code;//code为int则改成相同类型 MessageTypeEnum(String name, String code) { this.name = name; this.code = code; } public String getName() { return name; } public String getCode() { return code; }
根据code获取name 反之this
public static String getName(String code) { for (MessageTypeEnum c : MessageTypeEnum.values()) { if (c.getCode().equals(code)) { return c.name; } } return null; } public static String getCode(String name) { for (MessageTypeEnum c : MessageTypeEnum.values()) { if (c.getName().equals(name)) { return c.code; } } return null; }
在使用的实体类中建立新的一个字段或在原字段上替换(建议建立新的字段)code
// 类型:0.通常消息,1.公告消息,2.交易消息,3.活动消息,4.其余消息 private String messageTypeStr; public String getMessageTypeStr() { if (messageTypeStr == null || messageTypeStr.isEmpty()) { this.messageTypeStr = MessageTypeEnum.getName(this.getMessageType()); } return messageTypeStr; }
获取enum集合 list (其它集合相似):对象
建立新的实体类用于存储集合数据游戏
/** * 存储e枚举集合数据 * * @author 游戏人生 * date: 2019年6月27日12:20:36 */ public class SelectBean { private String key; private String value; public String getKey() { return key; } public void setKey(String key) { this.key = key; } public String getValue() { return value; } public void setValue(String value) { this.value = value; } @Override public String toString() { return "SelectBean{" + "key='" + key + '\'' + ", value='" + value + '\'' + '}'; }
获取list集合的方法get
public static List<SelectBean> getList() { List<SelectBean> list = new ArrayList<>(); try{ SelectBean bean ; for(MessageTypeEnum e: MessageTypeEnum.values()){ bean = new SelectBean(); bean.setKey(e.getCode()); bean.setValue(e.getName()); list.add(bean); } }catch (Exception e) { } return list; }
package com.beidou.shop.enums.message; import java.util.ArrayList; import java.util.List; /** * 消息类型 * * @author 游戏人生 * date: 2019年6月25日14:25:26 */ public enum MessageTypeEnum { // 类型:0.通常消息,1.公告消息,2交易消息,3.活动消息,4.其余消息 type_general("通常消息", "0"), type_ann("公告消息", "1"), type_trading("交易消息", "2"), type_activity("活动消息", "3"), type_other("其余消息", "4"); // 成员变量 private final String name; private final String code; MessageTypeEnum(String name, String code) { this.name = name; this.code = code; } public static String getName(String code) { for (MessageTypeEnum c : MessageTypeEnum.values()) { if (c.getCode().equals(code)) { return c.name; } } return null; } public static String getCode(String name) { for (MessageTypeEnum c : MessageTypeEnum.values()) { if (c.getName().equals(name)) { return c.code; } } return null; } public String getName() { return name; } public String getCode() { return code; } public static List<SelectBean> getList() { List<SelectBean> list = new ArrayList<>(); try { SelectBean bean; for (MessageTypeEnum e : MessageTypeEnum.values()) { bean = new SelectBean(); bean.setKey(e.getCode()); bean.setValue(e.getName()); list.add(bean); } } catch (Exception e) { } return list; } public static void main(String[] args) { System.out.println(MessageTypeEnum.getCode("公告消息")); System.out.println(MessageTypeEnum.getName("1")); System.out.println(MessageTypeEnum.getList()); } }
运行结果:it
1 公告消息 [SelectBean{key='0', value='通常消息'}, SelectBean{key='1', value='公告消息'}, SelectBean{key='2', value='交易消息'}, SelectBean{key='3', value='活动消息'}, SelectBean{key='4', value='其余消息'}]