public static class Char2ReferenceMaps.UnmodifiableMap<V> extends Char2ReferenceFunctions.UnmodifiableFunction<V> implements Char2ReferenceMap<V>, Serializable
Char2ReferenceMap.Entry<V>, Char2ReferenceMap.FastEntrySet<V>
Modifier and Type | Method and Description |
---|---|
ObjectSet<Char2ReferenceMap.Entry<V>> |
char2ReferenceEntrySet()
Returns a type-specific set view of the mappings contained in this map.
|
void |
clear()
Removes all associations from this function (optional operation).
|
boolean |
containsKey(char k) |
boolean |
containsKey(Object ok)
Returns true if this function contains a mapping for the specified key.
|
boolean |
containsValue(Object v) |
V |
defaultReturnValue()
Gets the default return value.
|
void |
defaultReturnValue(V defRetValue)
Sets the default return value.
|
ObjectSet<Map.Entry<Character,V>> |
entrySet()
Returns a set view of the mappings contained in this map.
|
V |
get(char k)
Returns the value to which the given key is mapped.
|
V |
get(Object k)
Delegates to the corresponding type-specific method, taking care of returning
null on a missing key. |
boolean |
isEmpty() |
CharSet |
keySet()
Returns a set view of the keys contained in this map.
|
V |
put(char k,
V v)
Adds a pair to the map.
|
void |
putAll(Map<? extends Character,? extends V> m) |
V |
remove(char k)
Removes the mapping with the given key.
|
V |
remove(Object k)
Delegates to the corresponding type-specific method, taking care of returning
null on a missing key. |
int |
size()
Returns the intended number of keys in this function, or -1 if no such number exists.
|
String |
toString() |
ReferenceCollection<V> |
values()
Returns a set view of the values contained in this map.
|
put
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
compute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, put, putIfAbsent, remove, replace, replace, replaceAll
public int size()
Function
Most function implementations will have some knowledge of the intended number of keys in their domain. In some cases, however, this might not be possible.
public boolean containsKey(char k)
containsKey
in interface Char2ReferenceFunction<V>
containsKey
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
Function.containsKey(Object)
public boolean containsValue(Object v)
containsValue
in interface Map<Character,V>
public V defaultReturnValue()
Char2ReferenceFunction
defaultReturnValue
in interface Char2ReferenceFunction<V>
defaultReturnValue
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
public void defaultReturnValue(V defRetValue)
Char2ReferenceFunction
get()
, put()
and remove()
to denote that the map does not contain the specified key. It must be
0/false
/null
by default.defaultReturnValue
in interface Char2ReferenceFunction<V>
defaultReturnValue
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
defRetValue
- the new default return value.Char2ReferenceFunction.defaultReturnValue()
public V put(char k, V v)
Char2ReferenceFunction
put
in interface Char2ReferenceFunction<V>
put
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
k
- the key.v
- the value.Function.put(Object,Object)
public ObjectSet<Char2ReferenceMap.Entry<V>> char2ReferenceEntrySet()
Char2ReferenceMap
This method is necessary because there is no inheritance along type parameters: it is thus impossible to strengthen Char2ReferenceMap.entrySet()
so that it returns an
ObjectSet
of type-specific entries (the latter makes it possible to access keys and values with type-specific methods).
char2ReferenceEntrySet
in interface Char2ReferenceMap<V>
Char2ReferenceMap.entrySet()
public CharSet keySet()
Char2ReferenceMap
Note that this specification strengthens the one given in Map.keySet()
.
keySet
in interface Char2ReferenceMap<V>
keySet
in interface Map<Character,V>
Map.keySet()
public ReferenceCollection<V> values()
Char2ReferenceMap
Note that this specification strengthens the one given in Map.values()
.
values
in interface Char2ReferenceMap<V>
values
in interface Map<Character,V>
Map.values()
public void clear()
Function
public String toString()
toString
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
public V remove(char k)
Char2ReferenceFunction
remove
in interface Char2ReferenceFunction<V>
remove
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
k
- the key.Function.remove(Object)
public V get(char k)
Char2ReferenceFunction
get
in interface Char2ReferenceFunction<V>
get
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
k
- the key.Function.get(Object)
public boolean containsKey(Object ok)
Function
Note that for some kind of functions (e.g., hashes) this method will always return true.
containsKey
in interface Function<Character,V>
containsKey
in interface Map<Character,V>
containsKey
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
ok
- the key.key
.Map.containsKey(Object)
public V remove(Object k)
AbstractChar2ReferenceFunction
null
on a missing key.
This method must check whether the provided key is in the map using containsKey()
. Thus, it probes the map twice. Implementors of subclasses should override it with a
more efficient method.
remove
in interface Function<Character,V>
remove
in interface Map<Character,V>
remove
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
k
- the key.null
if no value was present for the given key.Map.remove(Object)
public V get(Object k)
AbstractChar2ReferenceFunction
null
on a missing key.
This method must check whether the provided key is in the map using containsKey()
. Thus, it probes the map twice. Implementors of subclasses should override it with a
more efficient method.
get
in interface Function<Character,V>
get
in interface Map<Character,V>
get
in class Char2ReferenceFunctions.UnmodifiableFunction<V>
k
- the key.null
if no value was present for the given key.Map.get(Object)
public ObjectSet<Map.Entry<Character,V>> entrySet()
Char2ReferenceMap
Note that this specification strengthens the one given in Map.entrySet()
.
entrySet
in interface Char2ReferenceMap<V>
entrySet
in interface Map<Character,V>
Map.entrySet()