public abstract class AbstractReference2ReferenceMap<K,V> extends AbstractReference2ReferenceFunction<K,V> implements Reference2ReferenceMap<K,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).
Modifier and Type | Class and Description |
---|---|
static class |
AbstractReference2ReferenceMap.BasicEntry<K,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 |
AbstractReference2ReferenceMap.BasicEntrySet<K,V>
This class provides a basic implementation for an Entry set which forwards some queries to the map.
|
Reference2ReferenceMap.Entry<K,V>, Reference2ReferenceMap.FastEntrySet<K,V>
Modifier and Type | Method and Description |
---|---|
boolean |
containsKey(java.lang.Object 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() |
ReferenceSet<K> |
keySet()
Returns a type-specific-set view of the keys of this map.
|
void |
putAll(java.util.Map<? extends K,? extends V> m) |
java.lang.String |
toString() |
ReferenceCollection<V> |
values()
Returns a type-specific-set view of the values of this map.
|
defaultReturnValue, defaultReturnValue
clear, compute, computeIfAbsent, computeIfPresent, computeReferenceIfAbsentPartial, defaultReturnValue, defaultReturnValue, entrySet, forEach, getOrDefault, merge, put, putIfAbsent, reference2ReferenceEntrySet, remove, remove, replace, replace, size
andThenByte, andThenChar, andThenDouble, andThenFloat, andThenInt, andThenLong, andThenObject, andThenReference, andThenShort, composeByte, composeChar, composeDouble, composeFloat, composeInt, composeLong, composeObject, composeReference, composeShort, get
public boolean containsKey(java.lang.Object k)
containsKey
in interface Reference2ReferenceMap<K,V>
containsKey
in interface java.util.Map<K,V>
k
- the key.key
.Map.containsKey(Object)
If you override keySet()
, you should probably override this method too
to take advantage of the (presumably) faster key membership test your keySet()
provides.
If you override this method but not keySet()
, then the returned key set will take advantage of this method.
public boolean containsValue(java.lang.Object v)
containsValue
in interface java.util.Map<K,V>
If you override values()
, you should probably override this method too
to take advantage of the (presumably) faster value membership test your values()
provides.
If you override this method but not values()
, then the returned values collection will take advantage of this method.
public ReferenceSet<K> keySet()
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.
public ReferenceCollection<V> values()
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.
public int hashCode()
public boolean equals(java.lang.Object o)
public java.lang.String toString()
toString
in class java.lang.Object