首页 > Java > java教程 > Java中的EnumMap类

Java中的EnumMap类

WBOY
发布: 2023-09-11 22:01:02
转载
965 人浏览过

Java中的EnumMap类

The java.util.EnumMap 类是一种专门用于枚举键的Map实现。以下是关于EnumMap的重要点:

  • 枚举映射中的所有键必须来自于一个指定的枚举类型,该类型在创建映射时明确或隐式地指定。

  • 枚举映射按照键的自然顺序进行维护。

  • EnumMap不是同步的。如果多个线程同时访问一个枚举映射,并且至少有一个线程修改了映射,那么应该在外部进行同步。

以下是EnumMap类的构造函数:

table>

示例

让我们看一个示例 -

 现场演示

import java.util.EnumMap;
public class Demo {
   // create an enum
   public enum Numbers {
      ONE, TWO, THREE, FOUR, FIVE
   };
   public static void main(String[] args) {
      EnumMap<Numbers, String> map1 = new EnumMap<Numbers, String>(Numbers.class);
      EnumMap<Numbers, String> map2 = new EnumMap<Numbers, String>(Numbers.class);
      // associate values in map1
      map1.put(Numbers.ONE, "1");
      map1.put(Numbers.TWO, "2");
      map1.put(Numbers.THREE, "3");
      map1.put(Numbers.FOUR, "4");
      // print the whole map
      System.out.println("map1:" + map1);
      // clone map1 to map2
      map2 = map1.clone();
      // print map2
      System.out.println("map2:" + map2);
   }
}
登录后复制

输出

map1:{ONE=1, TWO=2, THREE=3, FOUR=4}
map2:{ONE=1, TWO=2, THREE=3, FOUR=4}
登录后复制

示例

让我们看另一个示例,其中我们显示了Map中键值映射的计数:

 实时演示

import java.util.*;
public class EnumMapDemo {
   // create an enum
   public enum Numbers {
      ONE, TWO, THREE, FOUR, FIVE
   };
   public static void main(String[] args) {
      EnumMap<Numbers, String> map = new EnumMap<Numbers, String>(Numbers.class);
      // assosiate values in map
      map.put(Numbers.ONE, "1");
      map.put(Numbers.TWO, "2");
      map.put(Numbers.THREE, "3");
      map.put(Numbers.FOUR, "4");
      // print the map
      System.out.println("Map: " + map);
      // print the number of mappings of this map
      System.out.println("Number of mappings:" + map.size());
      // remove value from Numbers.THREE
      map.put(Numbers.FIVE, "5");
      // print the new number of mappings of this map
      System.out.println("Number of mappings:" + map.size());
   }
}
登录后复制

输出

Map: {ONE=1, TWO=2, THREE=3, FOUR=4}
Number of mappings:4
Number of mappings:5
登录后复制
序号 构造函数及描述
1 EnumMap(Class keyType)

该构造函数使用指定的键类型创建一个空的枚举映射。

2 EnumMap(EnumMap m)

该构造函数使用与指定的枚举映射相同的键类型创建一个枚举映射, 最初包含相同的映射(如果有)。

3 EnumMap(Map m)

此构造函数创建一个从指定映射初始化的枚举映射。

以上是Java中的EnumMap类的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板