
- Java.util 包類
- Java.util - 首頁
- Java.util - ArrayDeque
- Java.util - ArrayList
- Java.util - Arrays
- Java.util - BitSet
- Java.util - Calendar
- Java.util - Collections
- Java.util - Currency
- Java.util - Date
- Java.util - Dictionary
- Java.util - EnumMap
- Java.util - EnumSet
- Java.util - Formatter
- Java.util - GregorianCalendar
- Java.util - HashMap
- Java.util - HashSet
- Java.util - Hashtable
- Java.util - IdentityHashMap
- Java.util - LinkedHashMap
- Java.util - LinkedHashSet
- Java.util - LinkedList
- Java.util - ListResourceBundle
- Java.util - Locale
- Java.util - Observable
- Java.util - PriorityQueue
- Java.util - Properties
- Java.util - PropertyPermission
- Java.util - PropertyResourceBundle
- Java.util - Random
- Java.util - ResourceBundle
- Java.util - ResourceBundle.Control
- Java.util - Scanner
- Java.util - ServiceLoader
- Java.util - SimpleTimeZone
- Java.util - Stack
- Java.util - StringTokenizer
- Java.util - Timer
- Java.util - TimerTask
- Java.util - TimeZone
- Java.util - TreeMap
- Java.util - TreeSet
- Java.util - UUID
- Java.util - Vector
- Java.util - WeakHashMap
- Java.util 包額外內容
- Java.util - 介面
- Java.util - 異常
- Java.util - 列舉
- Java.util 有用資源
- Java.util - 有用資源
- Java.util - 討論
Java IdentityHashMap 類
介紹
Java IdentityHashMap 類使用雜湊表實現 Map 介面,在比較鍵(和值)時使用引用相等性代替物件相等性。以下是關於 IdentityHashMap 的重要幾點:
此類提供所有可選的對映操作,並允許空值和空鍵。
此類不保證對映的順序;特別是,它不保證順序會隨時間保持不變。
在 IdentityHashMap 中,當且僅當 (k1==k2) 時,兩個鍵 k1 和 k2 被認為相等,而在 Map 實現(如 HashMap)中,當且僅當 (k1==null ? k2==null : k1.equals(k2)) 時,兩個鍵 k1 和 k2 被認為相等。
類宣告
以下是java.util.IdentityHashMap類的宣告:
public class IdentityHashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Serializable, Cloneable
類建構函式
序號 | 建構函式及描述 |
---|---|
1 | IdentityHashMap() 這將構造一個新的空 IdentityHashMap,預設預期最大大小為 (21)。 |
2 | IdentityHashMap(int expectedMaxSize) 這將構造一個新的空對映,具有指定的預期最大大小。 |
3 | IdentityHashMap(Map<? extends K,? extends V> m) 這將構造一個新的 IdentityHashMap,其中包含指定對映中的鍵值對映。 |
類方法
序號 | 方法及描述 |
---|---|
1 | void clear()
此方法從此對映中刪除所有對映。 |
2 | Object clone()
此方法返回此 IdentityHashMap 的淺複製:鍵和值本身不會被克隆。 |
3 | boolean containsKey(Object key)
此方法測試指定的物件引用是否為此 IdentityHashMap 中的鍵。 |
4 | boolean containsValue(Object value)
此方法測試指定的物件引用是否為此 IdentityHashMap 中的值。 |
5 | Set<Map.Entry<K,V>> entrySet()
此方法返回此對映中包含的對映的 Set 檢視。 |
6 | boolean equals(Object o)
此方法將指定的物件與此對映進行相等性比較。 |
7 | V get(Object key)
此方法返回指定鍵對映到的值,如果此對映不包含該鍵的對映,則返回 null。 |
8 | int hashCode()
此方法返回此對映的雜湊碼值。 |
9 | boolean isEmpty()
如果此 IdentityHashMap 不包含任何鍵值對映,則此方法返回 true。 |
10 | Set<K> keySet()
此方法返回此對映中包含的鍵的基於標識的 Set 檢視。 |
11 | V put(K key, V value)
此方法將指定的值與此 IdentityHashMap 中的指定鍵關聯。 |
12 | void putAll(Map<? extends K,? extends V> m)
此方法將指定對映中的所有映射覆制到此對映。 |
13 | V remove(Object key)
如果存在,此方法從此對映中刪除此鍵的對映。 |
14 | int size()
此方法返回此 IdentityHashMap 中鍵值對映的數量。 |
15 | Collection<V> values()
此方法返回此對映中包含的值的 Collection 檢視。 |
繼承的方法
此類繼承自以下類的方法:
- java.util.AbstractMap
- java.util.Object
在 IdentityHashMap 中新增鍵值對映示例
以下示例演示了 Java IdentityHashMap put() 方法的使用,用於將一些值放入 Map 中。我們建立了一個 Integer,Integer 的 Map 物件。然後使用 put() 方法新增一些條目,然後列印對映。
package com.tutorialspoint; import java.util.IdentityHashMap; public class IdentityHashMapDemo { public static void main(String args[]) { // create identity map IdentityHashMap<Integer,Integer> newmap = new IdentityHashMap<>(); // populate identity map newmap.put(1, 1); newmap.put(2, 2); newmap.put(3, 3); System.out.println("Map elements: " + newmap); } }
讓我們編譯並執行上述程式,這將產生以下結果。
Map elements: {2=2, 3=3, 1=1}