public static class Byte2ObjectMaps.UnmodifiableMap<V> extends Byte2ObjectFunctions.UnmodifiableFunction<V> implements Byte2ObjectMap<V>, java.io.Serializable
Byte2ObjectMap.Entry<V>, Byte2ObjectMap.FastEntrySet<V>
Modifier and Type | Method and Description |
---|---|
ObjectSet<Byte2ObjectMap.Entry<V>> |
byte2ObjectEntrySet()
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(byte k) |
boolean |
containsKey(java.lang.Object ok)
Returns true if this function contains a mapping for the specified key.
|
boolean |
containsValue(java.lang.Object v) |
V |
defaultReturnValue()
Gets the default return value.
|
void |
defaultReturnValue(V defRetValue)
Sets the default return value.
|
ObjectSet<java.util.Map.Entry<java.lang.Byte,V>> |
entrySet()
Returns a set view of the mappings contained in this map.
|
V |
get(byte k)
Returns the value to which the given key is mapped.
|
V |
get(java.lang.Object k)
Delegates to the corresponding type-specific method, taking care of returning
null on a missing key. |
boolean |
isEmpty() |
ByteSet |
keySet()
Returns a set view of the keys contained in this map.
|
V |
put(byte k,
V v)
Adds a pair to the map.
|
void |
putAll(java.util.Map<? extends java.lang.Byte,? extends V> m) |
V |
remove(byte k)
Removes the mapping with the given key.
|
V |
remove(java.lang.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.
|
java.lang.String |
toString() |
ObjectCollection<V> |
values()
Returns a set view of the values contained in this map.
|
put
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(byte k)
containsKey
in interface Byte2ObjectFunction<V>
containsKey
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
Function.containsKey(Object)
public boolean containsValue(java.lang.Object v)
containsValue
in interface java.util.Map<java.lang.Byte,V>
public V defaultReturnValue()
Byte2ObjectFunction
defaultReturnValue
in interface Byte2ObjectFunction<V>
defaultReturnValue
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
public void defaultReturnValue(V defRetValue)
Byte2ObjectFunction
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 Byte2ObjectFunction<V>
defaultReturnValue
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
defRetValue
- the new default return value.Byte2ObjectFunction.defaultReturnValue()
public V put(byte k, V v)
Byte2ObjectFunction
put
in interface Byte2ObjectFunction<V>
put
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
k
- the key.v
- the value.Function.put(Object,Object)
public void putAll(java.util.Map<? extends java.lang.Byte,? extends V> m)
putAll
in interface java.util.Map<java.lang.Byte,V>
public ObjectSet<Byte2ObjectMap.Entry<V>> byte2ObjectEntrySet()
Byte2ObjectMap
This method is necessary because there is no inheritance along
type parameters: it is thus impossible to strengthen Byte2ObjectMap.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).
byte2ObjectEntrySet
in interface Byte2ObjectMap<V>
Byte2ObjectMap.entrySet()
public ByteSet keySet()
Byte2ObjectMap
Note that this specification strengthens the one given in Map.keySet()
.
keySet
in interface Byte2ObjectMap<V>
keySet
in interface java.util.Map<java.lang.Byte,V>
Map.keySet()
public ObjectCollection<V> values()
Byte2ObjectMap
Note that this specification strengthens the one given in Map.values()
.
values
in interface Byte2ObjectMap<V>
values
in interface java.util.Map<java.lang.Byte,V>
Map.values()
public void clear()
Function
public java.lang.String toString()
toString
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
public V remove(byte k)
Byte2ObjectFunction
remove
in interface Byte2ObjectFunction<V>
remove
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
k
- the key.Function.remove(Object)
public V get(byte k)
Byte2ObjectFunction
get
in interface Byte2ObjectFunction<V>
get
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
k
- the key.Function.get(Object)
public boolean containsKey(java.lang.Object ok)
Function
Note that for some kind of functions (e.g., hashes) this method will always return true.
containsKey
in interface Function<java.lang.Byte,V>
containsKey
in interface java.util.Map<java.lang.Byte,V>
containsKey
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
ok
- the key.key
.Map.containsKey(Object)
public V remove(java.lang.Object k)
AbstractByte2ObjectFunction
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<java.lang.Byte,V>
remove
in interface java.util.Map<java.lang.Byte,V>
remove
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
k
- the key.null
if no value was present for the given key.Map.remove(Object)
public V get(java.lang.Object k)
AbstractByte2ObjectFunction
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<java.lang.Byte,V>
get
in interface java.util.Map<java.lang.Byte,V>
get
in class Byte2ObjectFunctions.UnmodifiableFunction<V>
k
- the key.null
if no value was present for the given key.Map.get(Object)
public boolean isEmpty()
isEmpty
in interface java.util.Map<java.lang.Byte,V>
public ObjectSet<java.util.Map.Entry<java.lang.Byte,V>> entrySet()
Byte2ObjectMap
Note that this specification strengthens the one given in Map.entrySet()
.
entrySet
in interface Byte2ObjectMap<V>
entrySet
in interface java.util.Map<java.lang.Byte,V>
Map.entrySet()