和枚举类相关的Map类——EnumMap
来源:互联网 发布:pdf合并拆分的软件 编辑:程序博客网 时间:2024/06/05 07:56
1 EnumMap类的简介
- EnumMap是一个与枚举类一起使用的Map实现,EnumMap中所有key都必须是单个枚举类的枚举值。创建EnumMap时必须显式或隐式指定它对应的枚举类。
- EnumMap在内部以数组形式保存,所以这种实现形式非常紧凑、高效。
- EnumMap根据key的自然顺序(即枚举值在枚举类中的定义顺序)来维护来维护key-value对的次序。当程序通过keySet()、entrySet()、values()等方法来遍历EnumMap时即可看到这种顺序。
- EnumMap不允许使用null作为key值,但允许使用null作为value。如果试图使用null作为key将抛出NullPointerException异常。如果仅仅只是查询是否包含值为null的key、或者仅仅只是使用删除值为null的key,都不会抛出异常。
2 代码示例
import java.util.*;enum Season{SPRING,SUMMER,FALL,WINTER}public class EnumMapTest{public static void main(String[] args){// 创建EnumMap对象,该EnumMap的所有key都是Season枚举类的枚举值EnumMap enumMap = new EnumMap(Season.class);enumMap.put(Season.SUMMER , "小荷才露尖尖角");enumMap.put(Season.SPRING , "满园春色关不住");System.out.println(enumMap);}}
3 运行结果
{SPRING=满园春色关不住, SUMMER=小荷才露尖尖角}
4 代码分析
上面程序中创建了一个EnumMap类,创建该EnumMap对象时指定它的key只能是Season枚举类的枚举值。如果向该EnumMap中添加两个key-value对后,这两个key-value对将会以Season枚举值的自然顺序排序。
2 0
- 和枚举类相关的Map类——EnumMap
- EnumMap的相关运用
- 说说Java中的枚举——EnumMap与EnumSet
- Emun 枚举类型使用浅析——包括enumSet enumMap
- Java中的枚举——EnumMap与EnumSet
- Java基础之集合框架--EnumMap(枚举映射类)
- EnumMap类源码解析
- EnumSet和EnumMap的总结
- Enummap联系两个枚举
- [EnumMap]——基本用法
- 枚举:集合对enum的支持,EnumSet,EnumMap
- 黑马程序员——集合(三)Map和枚举,Conllections工具类
- Java中Map的其他类型(WeakHashMap-IdentityHashMap-EnumMap)
- 枚举类相关知识
- 枚举和枚举类
- 初学Java,EnumMap实现类(三十四)
- C++11 FAQ中文版:枚举类——具有类域和强类型的枚举
- C++11 FAQ中文版:枚举类——具有类域和强类型的枚举
- 阿里服务器CentOS 6.5 更新gcc 从4.4.7 到 4.8.0
- IdentityHashMap类——保证Map中元素严格相等
- Spring@Autowired注解与自动装配
- mysql存储过程
- Deque与LinkedBlockingDeque深入分析
- 和枚举类相关的Map类——EnumMap
- 数据结构(16)——邻接表存储练习
- 算法训练:Minimum Path Sum
- 操作系统的工具类Collections
- eclipse 可以自动进行代码块的括号匹配【看括号的背景阴影】;双击括号,括号间的内容会被着色,进而凸显。
- 慎用“古老”接口Enumeration
- UML(统一建模语言)入门级介绍
- linux自动化编译之maven搭建
- 最常用的UML静态图