it.unimi.dsi.fastutil.objects
Class AbstractReference2IntMap<K>

java.lang.Object
  extended by it.unimi.dsi.fastutil.objects.AbstractReference2IntFunction<K>
      extended by it.unimi.dsi.fastutil.objects.AbstractReference2IntMap<K>
All Implemented Interfaces:
Function<K,Integer>, Reference2IntFunction<K>, Reference2IntMap<K>, Serializable, Map<K,Integer>
Direct Known Subclasses:
AbstractReference2IntSortedMap, Reference2IntArrayMap, Reference2IntOpenHashMap

public abstract class AbstractReference2IntMap<K>
extends AbstractReference2IntFunction<K>
implements Reference2IntMap<K>, Serializable

An abstract class providing basic methods for maps implementing a type-specific interface.

Optional operations just throw an UnsupportedOperationException. Generic versions of accessors delegate to the corresponding type-specific counterparts following the interface rules (they take care of returning null on a missing key).

As a further help, this class provides a BasicEntry inner class that implements a type-specific version of Map.Entry; it is particularly useful for those classes that do not implement their own entries (e.g., most immutable maps).

See Also:
Serialized Form

Nested Class Summary
static class AbstractReference2IntMap.BasicEntry<K>
          This class provides a basic but complete type-specific entry class for all those maps implementations that do not have entries on their own (e.g., most immutable maps).
 
Nested classes/interfaces inherited from interface it.unimi.dsi.fastutil.objects.Reference2IntMap
Reference2IntMap.Entry<K>, Reference2IntMap.FastEntrySet<K>
 
Field Summary
static long serialVersionUID
           
 
Method Summary
 boolean containsKey(Object k)
          Checks whether the given value is contained in keySet().
 boolean containsValue(int v)
          Checks whether the given value is contained in values().
 boolean containsValue(Object ov)
           
 ObjectSet<Map.Entry<K,Integer>> entrySet()
          Returns a set view of the mappings contained in this map.
 boolean equals(Object o)
           
 int hashCode()
          Returns a hash code for this map.
 boolean isEmpty()
           
 ReferenceSet<K> keySet()
          Returns a type-specific-set view of the keys of this map.
 void putAll(Map<? extends K,? extends Integer> m)
          Puts all pairs in the given map.
 String toString()
           
 IntCollection values()
          Returns a type-specific-set view of the values of this map.
 
Methods inherited from class it.unimi.dsi.fastutil.objects.AbstractReference2IntFunction
clear, defaultReturnValue, defaultReturnValue, get, put, put, remove, removeInt
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface it.unimi.dsi.fastutil.objects.Reference2IntMap
reference2IntEntrySet
 
Methods inherited from interface it.unimi.dsi.fastutil.objects.Reference2IntFunction
defaultReturnValue, defaultReturnValue, getInt, put, removeInt
 
Methods inherited from interface it.unimi.dsi.fastutil.Function
clear, get, put, remove, size
 
Methods inherited from interface java.util.Map
clear, get, put, remove, size
 

Field Detail

serialVersionUID

public static final long serialVersionUID
See Also:
Constant Field Values
Method Detail

containsValue

public boolean containsValue(Object ov)
Specified by:
containsValue in interface Map<K,Integer>

containsValue

public boolean containsValue(int v)
Checks whether the given value is contained in values().

Specified by:
containsValue in interface Reference2IntMap<K>
See Also:
Map.containsValue(Object)

containsKey

public boolean containsKey(Object k)
Checks whether the given value is contained in keySet().

Specified by:
containsKey in interface Function<K,Integer>
Specified by:
containsKey in interface Map<K,Integer>
Parameters:
k - the key.
Returns:
true if this function associates a value to key.
See Also:
Map.containsKey(Object)

putAll

public void putAll(Map<? extends K,? extends Integer> m)
Puts all pairs in the given map. If the map implements the interface of this map, it uses the faster iterators.

Specified by:
putAll in interface Map<K,Integer>
Parameters:
m - a map.

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface Map<K,Integer>

keySet

public ReferenceSet<K> keySet()
Returns a type-specific-set view of the keys of this map.

The view is backed by the set returned by entrySet(). Note that no attempt is made at caching the result of this method, as this would require adding some attributes that lightweight implementations would not need. Subclasses may easily override this policy by calling this method and caching the result, but implementors are encouraged to write more efficient ad-hoc implementations.

Specified by:
keySet in interface Reference2IntMap<K>
Specified by:
keySet in interface Map<K,Integer>
Returns:
a set view of the keys of this map; it may be safely cast to a type-specific interface.
See Also:
Map.keySet()

values

public IntCollection values()
Returns a type-specific-set view of the values of this map.

The view is backed by the set returned by entrySet(). Note that no attempt is made at caching the result of this method, as this would require adding some attributes that lightweight implementations would not need. Subclasses may easily override this policy by calling this method and caching the result, but implementors are encouraged to write more efficient ad-hoc implementations.

Specified by:
values in interface Reference2IntMap<K>
Specified by:
values in interface Map<K,Integer>
Returns:
a set view of the values of this map; it may be safely cast to a type-specific interface.
See Also:
Map.values()

entrySet

public ObjectSet<Map.Entry<K,Integer>> entrySet()
Description copied from interface: Reference2IntMap
Returns a set view of the mappings contained in this map.

Note that this specification strengthens the one given in Map.entrySet().

Specified by:
entrySet in interface Reference2IntMap<K>
Specified by:
entrySet in interface Map<K,Integer>
Returns:
a set view of the mappings contained in this map.
See Also:
Map.entrySet()

hashCode

public int hashCode()
Returns a hash code for this map. The hash code of a map is computed by summing the hash codes of its entries.

Specified by:
hashCode in interface Map<K,Integer>
Overrides:
hashCode in class Object
Returns:
a hash code for this map.

equals

public boolean equals(Object o)
Specified by:
equals in interface Map<K,Integer>
Overrides:
equals in class Object

toString

public String toString()
Overrides:
toString in class Object