Java 中对于枚举双值的使用
2016-07-22 09:15
411 查看
转成键值对或者是map 的形式;
键值对的类
public class Kav { /** * 键 */ 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; } }
枚举:
public enum AprrovalStatus { COMMITED(1L, "待审批"), APPROVALED(2L, "已审批通过"), REJECTED(3L, "已拒绝"), SYNCHRONIZED(4L, "已同步"), EXPIRED(5L,"已失效"), TEMPORARY(6L,"暂存"), REMOVE(7L,"撤回"); private final Long key; private final String value; public Long getKey() { return key; } public String getValue() { return value; } AprrovalStatus(Long key, String value) { this.key = key; this.value = value; } /** * 根据key获取value * * @param key * : 键值key * @return String */ public static String getValueByKey(String key) { AprrovalStatus[] enums = AprrovalStatus.values(); for (int i = 0; i < enums.length; i++) { if (enums[i].getKey().equals(key)) { return enums[i].getValue(); } } return ""; } /** * 转换为'KAV'列表 * * @return List<Kav> */ public static List<Kav> toKavs() { List<Kav> l_kavs = new ArrayList<Kav>(); AprrovalStatus[] enums = AprrovalStatus.values(); for (int i = 0; i < enums.length; i++) { Kav kav = new Kav(); kav.setKey(enums[i].getKey().toString()); kav.setValue(enums[i].getValue()); l_kavs.add(kav); } return l_kavs; } /** * 转换为MAP集合 * * @returnMap<String, String> */ public static Map<String, String> toMap() { Map<String, String> map = new HashMap<String, String>(); AprrovalStatus[] enums = AprrovalStatus.values(); for (int i = 0; i < enums.length; i++) { map.put(enums[i].getKey().toString(), enums[i].getValue()); } return map; } }
相关文章推荐
- java重写和重载
- Java map遍历
- JDBC批处理---(java 对数据库的回滚)
- Java并发编程:CountDownLatch、CyclicBarrier和Semaphore
- MyEclipse:(5)MyEclipse中添加user library
- Java内存泄露原因详解(转)
- java中的流
- 开发整理-sequoiaDB Java实现统计排名sql
- Java 内部类,多线程中Synchronized与wait,notify的使用
- Thinking in Java 第17章 容器深入研究(17.10-17.14)
- Cracking the Code Interview Chapter Three-- TaylorZhangYuxin's Solusion
- Spring依赖注入:注解注入总结
- Java开发中的23种设计模式详解
- Ibaitis Caused by: com.ibatis.common.beans.ProbeException: Error getting ordinal list from JavaBean.
- javaweb学生管理系统的课程设计
- java/反射/JDK新特性
- Java 反射 Array动态创建数组
- org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'springSessionRepositoryFilter' is defined
- java之List的实现类ArrayList
- struts2将数据通过Json格式显示于EasyUI-datagrid数据表格