public abstract class AbstractMap<K, V>

  1. Object
  2. AbstractMap

ImplementsMap<K, V>

Known subtypesHashMap, IdentityHashMap, TreeMap

This class is an abstract implementation of the Map interface. This implementation does not support adding. A subclass must implement the abstract method entrySet().

Nested types

class AbstractMap.SimpleImmutableEntryAn immutable key-value mapping.
class AbstractMap.SimpleEntryA key-value mapping.

Constructors

protected AbstractMap()Constructs a new instance of this AbstractMap.

Methods

public void clear()Removes all elements from this map, leaving it empty.
public boolean containsKey(Object key)Returns whether this map contains the specified key.
public boolean containsValue(Object value)Returns whether this map contains the specified value.
public abstract Set<Map.Entry<K, V>> entrySet()Returns a set containing all of the mappings in this map.
public boolean equals(Object object)Compares the specified object to this instance, and returns true if the specified object is a map and both maps contain the same mappings.
public V get(Object key)Returns the value of the mapping with the specified key.
public int hashCode()Returns the hash code for this object.
public boolean isEmpty()Returns whether this map is empty.
public Set<K> keySet()Returns a set of the keys contained in this map.
public V put(K key, V value)Maps the specified key to the specified value.
public void putAll(Map<? extends K, ? extends V> map)Copies every mapping in the specified map to this map.
public V remove(Object key)Removes a mapping with the specified key from this Map.
public int size()Returns the number of elements in this map.
public String toString()Returns the string representation of this map.
public Collection<V> values()Returns a collection of the values contained in this map.

Inherited nested types

Inherited methods

Constructor details

AbstractMap

protected AbstractMap()
Constructs a new instance of this AbstractMap.

Method details

clear

public void clear()
Removes all elements from this map, leaving it empty.

Throws

UnsupportedOperationException
if removing from this map is not supported.

containsKey

public boolean containsKey(Object key)
Returns whether this map contains the specified key.

Parameters

key Object
the key to search for.

Returns

true if this map contains the specified key, false otherwise.

containsValue

public boolean containsValue(Object value)
Returns whether this map contains the specified value.

Parameters

value Object
the value to search for.

Returns

true if this map contains the specified value, false otherwise.

entrySet

public abstract Set<Map.Entry<K, V>> entrySet()
Returns a set containing all of the mappings in this map. Each mapping is an instance of Map.Entry. As the set is backed by this map, changes in one will be reflected in the other.

Returns

a set of the mappings.

equals

public boolean equals(Object object)
Compares the specified object to this instance, and returns true if the specified object is a map and both maps contain the same mappings.

Parameters

object Object
the object to compare with this object.

Returns

boolean true if the object is the same as this object, and false if it is different from this object.

get

public V get(Object key)
Returns the value of the mapping with the specified key.

Parameters

key Object
the key.

Returns

the value of the mapping with the specified key, or null if no mapping for the specified key is found.

hashCode

public int hashCode()
Returns the hash code for this object. Objects which are equal must return the same value for this method.

Returns

the hash code of this object.

isEmpty

public boolean isEmpty()
Returns whether this map is empty.

Returns

true if this map has no elements, false otherwise.

See also

keySet

public Set<K> keySet()
Returns a set of the keys contained in this map. The set is backed by this map so changes to one are reflected by the other. The returned set does not support adding.

Returns

a set of the keys.

put

public V put(K key, V value)
Maps the specified key to the specified value.

Parameters

key K
the key.
value V
the value.

Returns

the value of any previous mapping with the specified key or null if there was no mapping.

Throws

UnsupportedOperationException
if adding to this map is not supported.
ClassCastException
if the class of the key or value is inappropriate for this map.
IllegalArgumentException
if the key or value cannot be added to this map.
NullPointerException
if the key or value is null and this Map does not support null keys or values.

putAll

public void putAll(Map<? extends K, ? extends V> map)
Copies every mapping in the specified map to this map.

Parameters

map Map<? extends K, ? extends V>
the map to copy mappings from.

Throws

UnsupportedOperationException
if adding to this map is not supported.
ClassCastException
if the class of a key or value is inappropriate for this map.
IllegalArgumentException
if a key or value cannot be added to this map.
NullPointerException
if a key or value is null and this map does not support null keys or values.

remove

public V remove(Object key)
Removes a mapping with the specified key from this Map.

Parameters

key Object
the key of the mapping to remove.

Returns

the value of the removed mapping or null if no mapping for the specified key was found.

Throws

UnsupportedOperationException
if removing from this map is not supported.

size

public int size()
Returns the number of elements in this map.

Returns

the number of elements in this map.

toString

public String toString()
Returns the string representation of this map.

Returns

the string representation of this map.

values

public Collection<V> values()

Returns a collection of the values contained in this map. The collection is backed by this map so changes to one are reflected by the other. The collection supports remove, removeAll, retainAll and clear operations, and it does not support add or addAll operations.

This method returns a collection which is the subclass of AbstractCollection. The iterator method of this subclass returns a “wrapper object” over the iterator of map’s entrySet(). The size method wraps the map’s size method and the contains method wraps the map’s containsValue method.

The collection is created when this method is called for the first time and returned in response to all subsequent calls. This method may return different collections when multiple concurrent calls occur to this method, since no synchronization is performed.

Returns

a collection of the values contained in this map.