@FunctionalInterface public interface Reference2CharFunction<K> extends Function<K,java.lang.Character>, java.util.function.ToIntFunction<K>
Function
; provides some additional methods that use polymorphism to avoid (un)boxing.
Type-specific versions of get()
, put()
and
remove()
cannot rely on null
to denote absence of
a key. Rather, they return a default
return value, which is set to 0/false at creation, but can be changed using
the defaultReturnValue()
method.
For uniformity reasons, even functions returning objects implement the default
return value (of course, in this case the default return value is
initialized to null
).
The default implementation of optional operations just throw an UnsupportedOperationException
, except for the type-specific containsKey()
, which return true. Generic versions of accessors delegate to
the corresponding type-specific counterparts following the interface rules.
Warning: to fall in line as much as possible with the
standard map interface, it is required that
standard versions of get()
, put()
and
remove()
for maps with primitive-type keys or values return
null
to denote missing keys rather than wrap the default
return value in an object. In case both keys and values are reference
types, the default return value must be returned instead, thus violating
the standard map interface when the default
return value is not null
.
Function
Modifier and Type | Method and Description |
---|---|
default <T> java.util.function.Function<K,T> |
andThen(java.util.function.Function<? super java.lang.Character,? extends T> after)
Deprecated.
Please use the corresponding type-specific method instead.
|
default Reference2ByteFunction<K> |
andThenByte(Char2ByteFunction after) |
default Reference2CharFunction<K> |
andThenChar(Char2CharFunction after) |
default Reference2DoubleFunction<K> |
andThenDouble(Char2DoubleFunction after) |
default Reference2FloatFunction<K> |
andThenFloat(Char2FloatFunction after) |
default Reference2IntFunction<K> |
andThenInt(Char2IntFunction after) |
default Reference2LongFunction<K> |
andThenLong(Char2LongFunction after) |
default <T> Reference2ObjectFunction<K,T> |
andThenObject(Char2ObjectFunction<? extends T> after) |
default <T> Reference2ReferenceFunction<K,T> |
andThenReference(Char2ReferenceFunction<? extends T> after) |
default Reference2ShortFunction<K> |
andThenShort(Char2ShortFunction after) |
default int |
applyAsInt(K operand) |
default Byte2CharFunction |
composeByte(Byte2ReferenceFunction<K> before) |
default Char2CharFunction |
composeChar(Char2ReferenceFunction<K> before) |
default Double2CharFunction |
composeDouble(Double2ReferenceFunction<K> before) |
default Float2CharFunction |
composeFloat(Float2ReferenceFunction<K> before) |
default Int2CharFunction |
composeInt(Int2ReferenceFunction<K> before) |
default Long2CharFunction |
composeLong(Long2ReferenceFunction<K> before) |
default <T> Object2CharFunction<T> |
composeObject(Object2ReferenceFunction<? super T,? extends K> before) |
default <T> Reference2CharFunction<T> |
composeReference(Reference2ReferenceFunction<? super T,? extends K> before) |
default Short2CharFunction |
composeShort(Short2ReferenceFunction<K> before) |
default char |
defaultReturnValue()
Gets the default return value.
|
default void |
defaultReturnValue(char rv)
Sets the default return value (optional operation).
|
default java.lang.Character |
get(java.lang.Object key)
Deprecated.
Please use the corresponding type-specific method instead.
|
char |
getChar(java.lang.Object key)
Returns the value to which the given key is mapped.
|
default char |
getOrDefault(java.lang.Object key,
char defaultValue)
Returns the value associated by this function to the specified key, or give the specified
value if not present.
|
default java.lang.Character |
getOrDefault(java.lang.Object key,
java.lang.Character defaultValue)
Deprecated.
Please use the corresponding type-specific method instead.
|
default char |
put(K key,
char value)
Adds a pair to the map (optional operation).
|
default java.lang.Character |
put(K key,
java.lang.Character value)
Deprecated.
Please use the corresponding type-specific method instead.
|
default java.lang.Character |
remove(java.lang.Object key)
Deprecated.
Please use the corresponding type-specific method instead.
|
default char |
removeChar(java.lang.Object key)
Removes the mapping with the given key (optional operation).
|
apply, clear, containsKey, size
default int applyAsInt(K operand)
applyAsInt
in interface java.util.function.ToIntFunction<K>
default char put(K key, char value)
key
- the key.value
- the value.Function.put(Object,Object)
char getChar(java.lang.Object key)
key
- the key.Function.get(Object)
default char getOrDefault(java.lang.Object key, char defaultValue)
key
- the key.defaultValue
- the value to return if not present.defaultValue
if no value was present for the given key.Function.getOrDefault(Object, Object)
default char removeChar(java.lang.Object key)
key
- the key.Function.remove(Object)
@Deprecated default java.lang.Character put(K key, java.lang.Character value)
key
- the key.value
- the value.null
if no value was present for the given key.Map.put(Object,Object)
@Deprecated default java.lang.Character get(java.lang.Object key)
key
- the key.null
if no value was present for the given key.Map.get(Object)
@Deprecated default java.lang.Character getOrDefault(java.lang.Object key, java.lang.Character defaultValue)
key
- the key.defaultValue
- the default value to return if not present.defaultValue
if no value was present for the
given key.Map.getOrDefault(Object, Object)
@Deprecated default java.lang.Character remove(java.lang.Object key)
key
- the key.null
if no value was present for the given key.Map.remove(Object)
default void defaultReturnValue(char rv)
get()
, put()
and remove()
to
denote that the map does not contain the specified key. It must be
0/false
/null
by default.rv
- the new default return value.defaultReturnValue()
default char defaultReturnValue()
This default implementation just return the default null value
of the type (null
for objects, 0 for scalars, false for Booleans).
@Deprecated default <T> java.util.function.Function<K,T> andThen(java.util.function.Function<? super java.lang.Character,? extends T> after)
andThen
in interface java.util.function.Function<K,java.lang.Character>
default Reference2ByteFunction<K> andThenByte(Char2ByteFunction after)
default Byte2CharFunction composeByte(Byte2ReferenceFunction<K> before)
default Reference2ShortFunction<K> andThenShort(Char2ShortFunction after)
default Short2CharFunction composeShort(Short2ReferenceFunction<K> before)
default Reference2IntFunction<K> andThenInt(Char2IntFunction after)
default Int2CharFunction composeInt(Int2ReferenceFunction<K> before)
default Reference2LongFunction<K> andThenLong(Char2LongFunction after)
default Long2CharFunction composeLong(Long2ReferenceFunction<K> before)
default Reference2CharFunction<K> andThenChar(Char2CharFunction after)
default Char2CharFunction composeChar(Char2ReferenceFunction<K> before)
default Reference2FloatFunction<K> andThenFloat(Char2FloatFunction after)
default Float2CharFunction composeFloat(Float2ReferenceFunction<K> before)
default Reference2DoubleFunction<K> andThenDouble(Char2DoubleFunction after)
default Double2CharFunction composeDouble(Double2ReferenceFunction<K> before)
default <T> Reference2ObjectFunction<K,T> andThenObject(Char2ObjectFunction<? extends T> after)
default <T> Object2CharFunction<T> composeObject(Object2ReferenceFunction<? super T,? extends K> before)
default <T> Reference2ReferenceFunction<K,T> andThenReference(Char2ReferenceFunction<? extends T> after)
default <T> Reference2CharFunction<T> composeReference(Reference2ReferenceFunction<? super T,? extends K> before)