public class AbstractHashedMap<K,V> extends java.util.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.
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(java.lang.Object key)
Checks whether the map contains the specified key.
|
boolean |
containsValue(java.lang.Object value)
Checks whether the map contains the specified value.
|
java.util.Set<java.util.Map.Entry<K,V>> |
entrySet()
Gets the entrySet view of the map.
|
boolean |
equals(java.lang.Object obj)
Compares this map with another.
|
V |
get(java.lang.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.
|
java.util.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(java.util.Map<? extends K,? extends V> map)
Puts all the values from the specified map into this map.
|
V |
remove(java.lang.Object key)
Removes the specified mapping from this map.
|
int |
size()
Gets the size of the map.
|
java.lang.String |
toString()
Gets the map as a String.
|
java.util.Collection<V> |
values()
Gets the values view of the map.
|
public V get(java.lang.Object key)
public int size()
public boolean isEmpty()
public boolean containsKey(java.lang.Object key)
public boolean containsValue(java.lang.Object value)
public void putAll(java.util.Map<? extends K,? extends V> map)
This implementation iterates around the specified map and
uses put(Object, Object)
.
public V remove(java.lang.Object key)
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 java.util.Set<java.util.Map.Entry<K,V>> entrySet()
mapIterator()
.public java.util.Set<K> keySet()
mapIterator()
.public java.util.Collection<V> values()
mapIterator()
.public boolean equals(java.lang.Object obj)
public int hashCode()
"Copyright © 2010 - 2020 Adobe Systems Incorporated. All Rights Reserved"