Class AbstractReference2IntMap<K>
- All Implemented Interfaces:
Function<K,
,Integer> Reference2IntFunction<K>
,Reference2IntMap<K>
,Serializable
,Function<K,
,Integer> ToIntFunction<K>
,Map<K,
Integer>
- Direct Known Subclasses:
AbstractReference2IntSortedMap
,Reference2IntArrayMap
,Reference2IntOpenCustomHashMap
,Reference2IntOpenHashMap
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:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
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).static class
This class provides a basic implementation for an Entry set which forwards some queries to the map.Nested classes/interfaces inherited from interface it.unimi.dsi.fastutil.objects.Reference2IntMap
Reference2IntMap.Entry<K>, Reference2IntMap.FastEntrySet<K>
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Returns true if this function contains a mapping for the specified key.boolean
containsValue
(int v) Returnstrue
if this map maps one or more keys to the specified value.boolean
int
hashCode()
Returns a hash code for this map.boolean
isEmpty()
keySet()
Returns a type-specific-set view of the keys of this map.final int
mergeInt
(K key, int value, IntBinaryOperator remappingFunction) If the specified key is not already associated with a value, associates it with the givenvalue
.void
toString()
values()
Returns a type-specific-set view of the values of this map.Methods inherited from class it.unimi.dsi.fastutil.objects.AbstractReference2IntFunction
defaultReturnValue, defaultReturnValue
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, replaceAll
Methods inherited from interface it.unimi.dsi.fastutil.objects.Reference2IntFunction
andThen, andThenByte, andThenChar, andThenDouble, andThenFloat, andThenInt, andThenLong, andThenObject, andThenReference, andThenShort, applyAsInt, composeByte, composeChar, composeDouble, composeFloat, composeInt, composeLong, composeObject, composeReference, composeShort, getInt, put, removeInt
Methods inherited from interface it.unimi.dsi.fastutil.objects.Reference2IntMap
clear, computeIfAbsent, computeIfAbsent, computeInt, computeIntIfAbsent, computeIntIfAbsentPartial, computeIntIfPresent, containsValue, defaultReturnValue, defaultReturnValue, entrySet, forEach, get, getOrDefault, getOrDefault, merge, merge, mergeInt, mergeInt, put, putIfAbsent, putIfAbsent, reference2IntEntrySet, remove, remove, remove, replace, replace, replace, replace, size
-
Method Details
-
containsKey
Returns true if this function contains a mapping for the specified key.- Specified by:
containsKey
in interfaceFunction<K,
Integer> - Specified by:
containsKey
in interfaceMap<K,
Integer> - Specified by:
containsKey
in interfaceReference2IntMap<K>
- Parameters:
k
- the key.- Returns:
- true if this function associates a value to
key
. - See Also:
- Implementation Specification:
- This implementation does a linear search over the entry set, finding an entry that has
the key specified.
If you override
keySet()
, you should probably override this method too to take advantage of the (presumably) faster key membership test yourkeySet()
provides.If you override this method but not
keySet()
, then the returned key set will take advantage of this method.
-
containsValue
public boolean containsValue(int v) Returnstrue
if this map maps one or more keys to the specified value.- Specified by:
containsValue
in interfaceReference2IntMap<K>
- See Also:
- Implementation Specification:
- This implementation does a linear search over the entry set, finding an entry that has
the value specified.
If you override
values()
, you should probably override this method too to take advantage of the (presumably) faster value membership test yourvalues()
provides.If you override this method but not
values()
, then the returned values collection will take advantage of this method.
-
isEmpty
public boolean isEmpty() -
mergeInt
If the specified key is not already associated with a value, associates it with the givenvalue
. Otherwise, replaces the associated value with the results of the given remapping function.- Specified by:
mergeInt
in interfaceReference2IntMap<K>
- Parameters:
key
- key with which the resulting value is to be associated.value
- the value to be merged with the existing value associated with the key or, if no existing value is associated with the key, to be associated with the key.remappingFunction
- the function to recompute a value if present.- See Also:
- Implementation Specification:
- This method just delegates to the interface default method, as the default method, but it is final, so it cannot be overridden.
-
keySet
Returns a type-specific-set view of the keys of this map.The view is backed by the set returned by
Map.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. -
values
Returns a type-specific-set view of the values of this map.The view is backed by the set returned by
Map.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. -
putAll
-
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. -
equals
-
toString
-