public class IdentityHashMap extends AbstractMap implements Map, Cloneable, Serializable
HashMap
that uses
System.identityHashCode(Object)
for hashing, and reference comparison
instead of Object.equals(Object)
. Note that this applies only to keys,
and not to values, i.e. containsValue(Object)
still uses Object.equals(Object)
.AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>
Modifier and Type | Field and Description |
---|---|
static long |
serialVersionUID |
Constructor and Description |
---|
IdentityHashMap()
Constructs a new, empty map with a default capacity and load
factor, which is 0.75.
|
IdentityHashMap(int initialCapacity)
Constructs a new, empty map with the specified initial capacity
and default load factor, which is 0.75.
|
IdentityHashMap(int initialCapacity,
float loadFactor)
Constructs a new, empty map with the specified initial
capacity and the specified load factor.
|
IdentityHashMap(Map t)
Constructs a new map with the same mappings as the given map.
|
Modifier and Type | Method and Description |
---|---|
void |
clear()
Removes all mappings from this map.
|
Object |
clone()
Returns a shallow copy of this IdentityHashMap instance: the keys and
values themselves are not cloned.
|
boolean |
containsKey(Object key)
Returns true if this map contains a mapping for the specified
key.
|
boolean |
containsValue(Object value)
Returns true if this map maps one or more keys to the
specified value.
|
Set |
entrySet()
Returns a collection view of the mappings contained in this map.
|
Object |
get(Object key)
Returns the value to which this map maps the specified key.
|
boolean |
isEmpty()
Returns true if this map contains no key-value mappings.
|
Set |
keySet()
Returns a set view of the keys contained in this map.
|
Object |
put(Object key,
Object value)
Associates the specified value with the specified key in this map.
|
void |
putAll(Map t)
Copies all of the mappings from the specified map to this one.
|
Object |
remove(Object key)
Removes the mapping for this key from this map if present.
|
int |
size()
Returns the number of key-value mappings in this map.
|
Collection |
values()
Returns a collection view of the values contained in this map.
|
equals, hashCode, toString
finalize, getClass, notify, notifyAll, wait, wait, wait
compute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAll
public static final long serialVersionUID
public IdentityHashMap(int initialCapacity, float loadFactor)
initialCapacity
- the initial capacity of the IdentityHashMap.loadFactor
- the load factor of the IdentityHashMapIllegalArgumentException
- if the initial capacity is less
than zero, or if the load factor is nonpositive.public IdentityHashMap(int initialCapacity)
initialCapacity
- the initial capacity of the IdentityHashMap.IllegalArgumentException
- if the initial capacity is less
than zero.public IdentityHashMap()
public IdentityHashMap(Map t)
t
- the map whose mappings are to be placed in this map.public int size()
size
in interface Map
size
in class AbstractMap
public boolean isEmpty()
isEmpty
in interface Map
isEmpty
in class AbstractMap
public boolean containsValue(Object value)
containsValue
in interface Map
containsValue
in class AbstractMap
value
- value whose presence in this map is to be tested.public boolean containsKey(Object key)
containsKey
in interface Map
containsKey
in class AbstractMap
key
- key whose presence in this Map is to be tested.public Object get(Object key)
get
in interface Map
get
in class AbstractMap
key
- key whose associated value is to be returned.public Object put(Object key, Object value)
put
in interface Map
put
in class AbstractMap
key
- key with which the specified value is to be associated.value
- value to be associated with the specified key.public Object remove(Object key)
remove
in interface Map
remove
in class AbstractMap
key
- key whose mapping is to be removed from the map.public void putAll(Map t)
putAll
in interface Map
putAll
in class AbstractMap
t
- Mappings to be stored in this map.public void clear()
clear
in interface Map
clear
in class AbstractMap
public Object clone()
clone
in class AbstractMap
public Set keySet()
keySet
in interface Map
keySet
in class AbstractMap
public Collection values()
values
in interface Map
values
in class AbstractMap
public Set entrySet()
entrySet
in interface Map
entrySet
in class AbstractMap
Map.Entry