首頁 >Java >java教程 >Java中的EnumMap類

Java中的EnumMap類

WBOY
WBOY轉載
2023-09-11 22:01:02962瀏覽

Java中的EnumMap類

The java.util.EnumMap 類別是專門用於枚舉鍵的Map實作。以下是關於EnumMap的重要點:

  • 枚舉映射中的所有鍵必須來自於一個指定的枚舉類型,該類型在建立映射時明確或隱式地指定。

  • 枚舉映射依照鍵的自然順序進行維護。

  • EnumMap不是同步的。如果多個執行緒同時存取一個枚舉映射,並且至少有一個執行緒修改了映射,那麼應該在外部進行同步。

以下是EnumMap類別的建構子:

##建構子及描述123 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

#序號
EnumMap(Class keyType)該建構函式使用指定的鍵類型創建一個空的枚舉映射。

EnumMap(EnumMap m)#該建構函數使用與指定的枚舉映射相同的鍵類型建立一個枚舉映射, 最初包含相同的映射(如果有)。

EnumMap(Map m)#此構造函數建立一個從指定映射初始化的枚舉映射。

以上是Java中的EnumMap類的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除