public class

EnumMap

extends AbstractMap<K, V>
implements Serializable Cloneable Map<K, V>
java.lang.Object
   ↳ java.util.AbstractMap<K, V>
     ↳ java.util.EnumMap<K extends java.lang.Enum<K>, V>

Class Overview

An Map specialized for use with Enum types as keys.

Summary

Public Constructors
EnumMap(Class<K> keyType)
Constructs an empty EnumMap using the given key type.
EnumMap(EnumMap<K, ? extends V> map)
Constructs an EnumMap using the same key type as the given EnumMap and initially containing the same mappings.
EnumMap(Map<K, ? extends V> map)
Constructs an EnumMap initialized from the given map.
Public Methods
void clear()
Removes all elements from this EnumMap, leaving it empty.
EnumMap<K, V> clone()
Returns a shallow copy of this EnumMap.
boolean containsKey(Object key)
Returns whether this EnumMap contains the specified key.
boolean containsValue(Object value)
Returns whether this EnumMap contains the specified value.
Set<Entry<K, V>> entrySet()
Returns a Set containing all of the mappings in this EnumMap.
boolean equals(Object object)
Compares the argument to the receiver, and returns true if the specified Object is an EnumMap and both EnumMaps contain the same mappings.
V get(Object key)
Returns the value of the mapping with the specified key.
Set<K> keySet()
Returns a set of the keys contained in this EnumMap.
V put(K key, V value)
Maps the specified key to the specified value.
void putAll(Map<? extends K, ? extends V> map)
Copies every mapping in the specified Map to this EnumMap.
V remove(Object key)
Removes a mapping with the specified key from this EnumMap.
int size()
Returns the number of elements in this EnumMap.
Collection<V> values()
Returns a Collection of the values contained in this EnumMap.
[Expand]
Inherited Methods
From class java.util.AbstractMap
From class java.lang.Object
From interface java.util.Map

Public Constructors

public EnumMap (Class<K> keyType)

Constructs an empty EnumMap using the given key type.

Parameters
keyType the class object giving the type of the keys used by this EnumMap.

public EnumMap (EnumMap<K, ? extends V> map)

Constructs an EnumMap using the same key type as the given EnumMap and initially containing the same mappings.

Parameters
map the EnumMap from which this EnumMap is initialized.

public EnumMap (Map<K, ? extends V> map)

Constructs an EnumMap initialized from the given map. If the given map is an EnumMap instance, this constructor behaves in the exactly the same way as EnumMap(EnumMap)}. Otherwise, the given map should contain at least one mapping.

Parameters
map the map from which this EnumMap is initialized.
Throws
IllegalArgumentException if map is not an EnumMap instance and does not contain any mappings.

Public Methods

public void clear ()

Removes all elements from this EnumMap, leaving it empty.

See Also

public EnumMap<K, V> clone ()

Returns a shallow copy of this EnumMap.

Returns
  • a shallow copy of this EnumMap.

public boolean containsKey (Object key)

Returns whether this EnumMap contains the specified key.

Parameters
key the key to search for.
Returns
  • true if this EnumMap contains the specified key, false otherwise.

public boolean containsValue (Object value)

Returns whether this EnumMap contains the specified value.

Parameters
value the value to search for.
Returns
  • true if this EnumMap contains the specified value, false otherwise.

public Set<Entry<K, V>> entrySet ()

Returns a Set containing all of the mappings in this EnumMap. Each mapping is an instance of Map.Entry. As the Set is backed by this EnumMap, changes in one will be reflected in the other.

Returns
  • a Set of the mappings.

public boolean equals (Object object)

Compares the argument to the receiver, and returns true if the specified Object is an EnumMap and both EnumMaps contain the same mappings.

Parameters
object the Object to compare with this EnumMap.
Returns
  • boolean true if object is the same as this EnumMap, false otherwise.

public V get (Object key)

Returns the value of the mapping with the specified key.

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

public Set<K> keySet ()

Returns a set of the keys contained in this EnumMap. The Set is backed by this EnumMap so changes to one are reflected in the other. The Set does not support adding.

Returns
  • a Set of the keys.

public V put (K key, V value)

Maps the specified key to the specified value.

Parameters
key the key.
value 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 EnumMap does not support null keys or values.

public void putAll (Map<? extends K, ? extends V> map)

Copies every mapping in the specified Map to this EnumMap.

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

public V remove (Object key)

Removes a mapping with the specified key from this EnumMap.

Parameters
key 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 EnumMap is not supported.

public int size ()

Returns the number of elements in this EnumMap.

Returns
  • the number of elements in this EnumMap.

public Collection<V> values ()

Returns a Collection of the values contained in this EnumMap. The returned Collection complies with the general rule specified in values(). The Collection's Iterator will return the values in the their corresponding keys' natural order (the Enum constants are declared in this order).

Returns
  • a collection of the values contained in this EnumMap.