Class AbstractInt2ReferenceMap<V>
- All Implemented Interfaces:
Function<java.lang.Integer,V>
,Int2ReferenceFunction<V>
,Int2ReferenceMap<V>
,java.io.Serializable
,java.util.function.Function<java.lang.Integer,V>
,java.util.function.IntFunction<V>
,java.util.Map<java.lang.Integer,V>
- Direct Known Subclasses:
AbstractInt2ReferenceSortedMap
,Int2ReferenceArrayMap
,Int2ReferenceOpenCustomHashMap
,Int2ReferenceOpenHashMap
public abstract class AbstractInt2ReferenceMap<V> extends AbstractInt2ReferenceFunction<V> implements Int2ReferenceMap<V>, java.io.Serializable
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
Nested Classes Modifier and Type Class Description static class
AbstractInt2ReferenceMap.BasicEntry<V>
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
AbstractInt2ReferenceMap.BasicEntrySet<V>
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.ints.Int2ReferenceMap
Int2ReferenceMap.Entry<V>, Int2ReferenceMap.FastEntrySet<V>
-
Method Summary
Modifier and Type Method Description boolean
containsKey(int k)
Returns true if this function contains a mapping for the specified key.boolean
containsValue(java.lang.Object v)
boolean
equals(java.lang.Object o)
int
hashCode()
Returns a hash code for this map.boolean
isEmpty()
IntSet
keySet()
Returns a type-specific-set view of the keys of this map.void
putAll(java.util.Map<? extends java.lang.Integer,? extends V> m)
java.lang.String
toString()
ReferenceCollection<V>
values()
Returns a type-specific-set view of the values of this map.Methods inherited from class it.unimi.dsi.fastutil.ints.AbstractInt2ReferenceFunction
defaultReturnValue, defaultReturnValue
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.function.Function
andThen
Methods inherited from interface it.unimi.dsi.fastutil.ints.Int2ReferenceFunction
andThenByte, andThenChar, andThenDouble, andThenFloat, andThenInt, andThenLong, andThenObject, andThenReference, andThenShort, apply, compose, composeByte, composeChar, composeDouble, composeFloat, composeInt, composeLong, composeObject, composeReference, composeShort, get, put, remove
Methods inherited from interface it.unimi.dsi.fastutil.ints.Int2ReferenceMap
clear, compute, computeIfAbsent, computeIfAbsent, computeIfAbsentPartial, computeIfPresent, containsKey, defaultReturnValue, defaultReturnValue, entrySet, forEach, get, getOrDefault, getOrDefault, int2ReferenceEntrySet, merge, put, putIfAbsent, remove, remove, replace, replace, size
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, merge, putIfAbsent, remove, replace, replace, replaceAll
-
Method Details
-
containsKey
public boolean containsKey(int k)Returns true if this function contains a mapping for the specified key.- Specified by:
containsKey
in interfaceInt2ReferenceFunction<V>
- Specified by:
containsKey
in interfaceInt2ReferenceMap<V>
- Parameters:
k
- the key.- Returns:
- true if this function associates a value to
key
. - See Also:
Map.containsKey(Object)
- 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(java.lang.Object v)- Specified by:
containsValue
in interfacejava.util.Map<java.lang.Integer,V>
- 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()- Specified by:
isEmpty
in interfacejava.util.Map<java.lang.Integer,V>
-
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.- Specified by:
keySet
in interfaceInt2ReferenceMap<V>
- Specified by:
keySet
in interfacejava.util.Map<java.lang.Integer,V>
- 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
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.- Specified by:
values
in interfaceInt2ReferenceMap<V>
- Specified by:
values
in interfacejava.util.Map<java.lang.Integer,V>
- Returns:
- a set view of the values of this map; it may be safely cast to a type-specific interface.
- See Also:
Map.values()
-
putAll
- Specified by:
putAll
in interfacejava.util.Map<java.lang.Integer,V>
-
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 interfacejava.util.Map<java.lang.Integer,V>
- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- a hash code for this map.
-
equals
public boolean equals(java.lang.Object o)- Specified by:
equals
in interfacejava.util.Map<java.lang.Integer,V>
- Overrides:
equals
in classjava.lang.Object
-
toString
public java.lang.String toString()- Overrides:
toString
in classjava.lang.Object
-