K
- the type of the keys in this mapV
- the type of the values in this mappublic class AbstractHashedMap<K,V> extends AbstractMap<K,V> implements IterableMap<K,V>
This class implements all the features necessary for a subclass hash-based map.
Key-value entries are stored in instances of the HashEntry
class,
which can be overridden and replaced. The iterators can similarly be replaced,
without the need to replace the KeySet, EntrySet and Values view classes.
Overridable methods are provided to change the default hashing behaviour, and to change how entries are added to and removed from the map. Hopefully, all you need for unusual subclasses is here.
NOTE: From Commons Collections 3.1 this class extends AbstractMap. This is to provide backwards compatibility for ReferenceMap between v3.0 and v3.1. This extends clause will be removed in v5.0.
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>
Modifier and Type | Method and Description |
---|---|
void |
clear()
Clears the map, resetting the size to zero and nullifying references
to avoid garbage collection issues.
|
boolean |
containsKey(Object key)
Checks whether the map contains the specified key.
|
boolean |
containsValue(Object value)
Checks whether the map contains the specified value.
|
Set<Map.Entry<K,V>> |
entrySet()
Gets the entrySet view of the map.
|
boolean |
equals(Object obj)
Compares this map with another.
|
V |
get(Object key)
Gets the value mapped to the key specified.
|
int |
hashCode()
Gets the standard Map hashCode.
|
boolean |
isEmpty()
Checks whether the map is currently empty.
|
Set<K> |
keySet()
Gets the keySet view of the map.
|
MapIterator<K,V> |
mapIterator()
Gets an iterator over the map.
|
V |
put(K key,
V value)
Puts a key-value mapping into this map.
|
void |
putAll(Map<? extends K,? extends V> map)
Puts all the values from the specified map into this map.
|
V |
remove(Object key)
Removes the specified mapping from this map.
|
int |
size()
Gets the size of the map.
|
String |
toString()
Gets the map as a String.
|
Collection<V> |
values()
Gets the values view of the map.
|
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
public int size()
public boolean isEmpty()
public boolean containsKey(Object key)
containsKey
in interface Map<K,V>
containsKey
in interface Get<K,V>
containsKey
in class AbstractMap<K,V>
key
- the key to search forMap.containsKey(Object)
public boolean containsValue(Object value)
containsValue
in interface Map<K,V>
containsValue
in interface Get<K,V>
containsValue
in class AbstractMap<K,V>
value
- the value to search forMap.containsValue(Object)
public void putAll(Map<? extends K,? extends V> map)
This implementation iterates around the specified map and
uses put(Object, Object)
.
putAll
in interface Map<K,V>
putAll
in interface Put<K,V>
putAll
in class AbstractMap<K,V>
map
- the map to addNullPointerException
- if the map is nullMap.putAll(Map)
public void clear()
public MapIterator<K,V> mapIterator()
A MapIterator returns the keys in the map. It also provides convenient methods to get the key and value, and set the value. It avoids the need to create an entrySet/keySet/values object. It also avoids creating the Map.Entry object.
mapIterator
in interface IterableGet<K,V>
public Set<Map.Entry<K,V>> entrySet()
mapIterator()
.public Set<K> keySet()
mapIterator()
.public Collection<V> values()
mapIterator()
.public boolean equals(Object obj)
public int hashCode()
public String toString()
toString
in class AbstractMap<K,V>
Copyright © 2010 - 2020 Adobe. All Rights Reserved