JAVA EnumMap
来源:互联网 发布:一起看软件 编辑:程序博客网 时间:2024/05/06 04:59
转载自:http://blog.csdn.net/cuidiwhere/article/details/21995363
前记: 翻看《java 核心技术》第13章集合,看到EnumMap 一种键值属于枚举类型的映射表。想起前几天有个需求:文件上传如果出错,返回给用户的消息形如为
错误的行号和原因:
2,4,6 商品id为必填项
1,7 应用标识错误
8 时间格式错误
由于错误原因是有限的,可以用枚举ErrMsgEnum表示。起初利用 HashMap<ErrMsgEnum,String> 来保存,了解了EnumMap内部是利用数组存储后,更改为EnumMap<ErrMsgEnum,String> 效率更高
实现
1. ErrMsgEnum.java
- public enum ErrMsgEnum {
- required_item_id("商品id为必填项"),
- invalid_app_id("应用标识错误"),
- invalid_date("时间格式错误");
- private String value;
- private ErrMsgEnum(String value) {
- this.setValue(value);
- }
- public String getValue() {
- return value;
- }
- public void setValue(String value) {
- this.value = value;
- }
- }
2. TestEnumMap.java
- import java.util.EnumMap;
- import java.util.Map;
- public class TestEnumMap {
- public static void main(String[] args) {
- EnumMap<ErrMsgEnum,String> errMsgMap = new EnumMap<ErrMsgEnum,String>(ErrMsgEnum.class);
- errMsgMap.put(ErrMsgEnum.required_item_id, "2,4,6");
- errMsgMap.put(ErrMsgEnum.invalid_app_id, "1,7");
- errMsgMap.put(ErrMsgEnum.invalid_date, "8");
- for(Map.Entry<ErrMsgEnum,String> entry:errMsgMap.entrySet() ){
- System.out.println(entry.getValue()+ " " + entry.getKey().getValue());
- }
- }
- }
0 0
- java enumMap
- JAVA EnumMap
- Java集合框架:EnumMap
- 《java集合》--EnumMap
- EnumMap
- EnumMap
- EnumMap
- EnumMap
- [疯狂Java]集合:IdentityHashMap、EnumMap
- Java 之EnumSet与EnumMap
- Java EnumMap 代替序数索引
- Java Enum、EnumMap、EnumSet 详解
- JAVA随笔记(2)EnumMap
- 初学Java,EnumMap实现类(三十四)
- Java-Collections Framework学习与总结-EnumMap
- java-EnumMap、IdentityHashMap、WeakHashMap源码分析
- java学习笔记之WeakHashMap 、IdentityHashMap、EnumMap
- java集合-EnumMap与EnumSet
- 三星将专注于高端产品 推出更多金属、纤薄智能机【转载】
- KVC KVO
- Conversion to Dalvik format failed: Unable to execute dex的解决方法
- create dialog 失败
- 微信、陌陌等著名IM软件设计架构详解
- JAVA EnumMap
- PAT_A_1040. Longest Symmetric String (25)
- Handler,Looper,MessageQueue,android中的消息机制以及源码分析(一)
- iOS如何把所有界面的状态栏的字体颜色都设置为白色
- arcgis for javascript 帮助
- hibou 主界面自定义侧滑
- [LeetCode] 034. Search for a Range (Medium) (C++/Java)
- 趋势科技实习录--知识杂碎
- pcie的msi与msi-x-串行VS并行