
- Java.util 包類
- Java.util - 首頁
- Java.util - ArrayDeque
- Java.util - ArrayList
- Java.util - 陣列
- Java.util - 位集
- Java.util - 日曆
- Java.util - 集合
- Java.util - 貨幣
- Java.util - 日期
- Java.util - 字典
- Java.util - EnumMap
- Java.util - EnumSet
- Java.util - 格式化程式
- Java.util - 公曆
- Java.util - 雜湊對映
- Java.util - 雜湊集
- Java.util - 雜湊表
- Java.util - 標識雜湊對映
- Java.util - 關聯雜湊對映
- Java.util - 關聯雜湊集
- Java.util - 連結串列
- Java.util - 列表資源包
- Java.util - 語言環境
- Java.util - 可觀察
- Java.util - 優先順序佇列
- Java.util - 屬性
- Java.util - 屬性許可權
- Java.util - 屬性資源包
- Java.util - 隨機
- Java.util - 資源包
- Java.util - 資源包控制
- Java.util - 掃描程式
- Java.util - 服務載入程式
- Java.util - SimpleTimeZone
- Java.util - 棧
- Java.util - 字串解析器
- Java.util - 定時器
- Java.util - 定時器任務
- Java.util - 時區
- Java.util - 樹形對映
- Java.util - 樹形集
- Java.util - UUID
- Java.util - 向量
- Java.util - 弱雜湊對映
- Java.util 包額外資訊
- Java.util - 介面
- Java.util - 異常
- Java.util - 列舉
- Java.util 有用資源
- Java.util - 有用資源
- Java.util - 討論
Java EnumMap 類
引言
Java EnumMap 類是專用的對映實現,用於使用列舉鍵。以下是有關 EnumMap 的重要要點 -
列舉對映中的所有鍵都必須來自建立對映時明確或隱式指定的單個列舉型別。
列舉對映按其鍵的自然順序維護。
EnumMap 沒有進行同步。如果多個執行緒併發訪問列舉對映,並且至少有一個執行緒修改了對映,則應從外部對其進行同步。
類宣告
以下是java.util.EnumMap 類的宣告 -
public class EnumMap<K extends Enum<K>,V> extends AbstractMap<K,V> implements Serializable, Cloneable
類建構函式
序號 | 建構函式和說明 |
---|---|
1 | EnumMap(Class<K> keyType) 此建構函式建立一個具有指定鍵型別的空列舉對映。 |
2 | EnumMap(EnumMap<K,? extends V> m) 此建構函式建立一個具有與指定的列舉對映相同的鍵型別的列舉對映,最初包含相同的對映(如果存在)。 |
3 | EnumMap(Map<K,? extends V> m) 此建構函式建立一個從指定對映初始化的列舉對映。 |
類方法
序號 | 方法與說明 |
---|---|
1 | void clear()
此方法從此對映中刪除所有對映。 |
2 | EnumMap<K,V> clone()
此方法返回此列舉對映的淺副本。 |
3 | boolean containsKey(Object key)
如果此對映包含指定鍵的對映,則此方法返回 true。 |
4 | boolean containsValue(Object value)
如果此對映將一個或多個鍵對映到指定值,則此方法返回 true。 |
5 | Set<Map.Entry<K,V>> entrySet()
此方法返回此對映中包含的對映的 Set 檢視。 |
6 | boolean equals(Object o)
此方法將指定物件與此對映進行比較以獲得相等性。 |
7 | V get(Object key)
此方法返回指定鍵被對映到的值,如果此對映不包含鍵的對映,則返回 null。 |
8 | int hashCode()
此方法為此對映返回雜湊程式碼值。 |
9 | Set<K> keySet()
此方法返回此對映中包含的鍵的 Set 檢視。 |
10 | V put(K key, V value)
此方法將指定值與該對映中的指定鍵關聯。 |
11 | void putAll(Map<? extends K,? extends V> m)
此方法將指定對映中的所有映射覆制到此對映。 |
12 | V remove(Object key)
如果存在,此方法從該對映中刪除此鍵的對映。 |
13 | int size()
此方法返回該對映中的鍵值對映數。 |
14 | Collection<V> values()
此方法返回此對映中包含的值的 Collection 檢視。 |
繼承的方法
此類繼承以下類的類方法 −
- java.util.AbstractMap
- java.util.Object
向 EnumMap 新增 Enum、Integer 對示例
以下示例展示了 Java EnumMap put(K,V) 方法用於在 EnumMap 例項中放入值。我們建立了一個列舉 Numbers。然後使用列舉 numbers 和整數建立 EnumMap。使用 put(K,V) 添加了幾個條目並列印了 enumMap。再次使用 put() 方法,替換了 enumMap 的一個值並再次列印了對映。
package com.tutorialspoint; import java.util.EnumMap; public class EnumMapDemo { // create an enum public enum Numbers{ONE, TWO, THREE, FOUR, FIVE}; public static void main(String[] args) { EnumMap<Numbers,Integer> map = new EnumMap<>(Numbers.class); // associate values in map map.put(Numbers.ONE, 1); map.put(Numbers.TWO, 2); map.put(Numbers.THREE,3); // print the whole map System.out.println(map); map.put(Numbers.THREE, 4); // print the updated map System.out.println(map); } }
讓我們編譯並執行上述程式,它會生成以下結果 −
{ONE=1, TWO=2, THREE=3} {ONE=1, TWO=2, THREE=4}