@FunctionalInterface public interface Object2BooleanFunction<K> extends Function<K,java.lang.Boolean>, java.util.function.Predicate<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.Boolean,? extends T> after)
Deprecated.
Please use the corresponding type-specific method instead.
|
default Object2ByteFunction<K> |
andThenByte(Boolean2ByteFunction after) |
default Object2CharFunction<K> |
andThenChar(Boolean2CharFunction after) |
default Object2DoubleFunction<K> |
andThenDouble(Boolean2DoubleFunction after) |
default Object2FloatFunction<K> |
andThenFloat(Boolean2FloatFunction after) |
default Object2IntFunction<K> |
andThenInt(Boolean2IntFunction after) |
default Object2LongFunction<K> |
andThenLong(Boolean2LongFunction after) |
default <T> Object2ObjectFunction<K,T> |
andThenObject(Boolean2ObjectFunction<? extends T> after) |
default <T> Object2ReferenceFunction<K,T> |
andThenReference(Boolean2ReferenceFunction<? extends T> after) |
default Object2ShortFunction<K> |
andThenShort(Boolean2ShortFunction after) |
default Byte2BooleanFunction |
composeByte(Byte2ObjectFunction<K> before) |
default Char2BooleanFunction |
composeChar(Char2ObjectFunction<K> before) |
default Double2BooleanFunction |
composeDouble(Double2ObjectFunction<K> before) |
default Float2BooleanFunction |
composeFloat(Float2ObjectFunction<K> before) |
default Int2BooleanFunction |
composeInt(Int2ObjectFunction<K> before) |
default Long2BooleanFunction |
composeLong(Long2ObjectFunction<K> before) |
default <T> Object2BooleanFunction<T> |
composeObject(Object2ObjectFunction<? super T,? extends K> before) |
default <T> Reference2BooleanFunction<T> |
composeReference(Reference2ObjectFunction<? super T,? extends K> before) |
default Short2BooleanFunction |
composeShort(Short2ObjectFunction<K> before) |
default boolean |
defaultReturnValue()
Gets the default return value.
|
default void |
defaultReturnValue(boolean rv)
Sets the default return value (optional operation).
|
default java.lang.Boolean |
get(java.lang.Object key)
Deprecated.
Please use the corresponding type-specific method instead.
|
boolean |
getBoolean(java.lang.Object key)
Returns the value to which the given key is mapped.
|
default boolean |
getOrDefault(java.lang.Object key,
boolean defaultValue)
Returns the value associated by this function to the specified key, or give the specified
value if not present.
|
default java.lang.Boolean |
getOrDefault(java.lang.Object key,
java.lang.Boolean defaultValue)
Deprecated.
Please use the corresponding type-specific method instead.
|
default boolean |
put(K key,
boolean value)
Adds a pair to the map (optional operation).
|
default java.lang.Boolean |
put(K key,
java.lang.Boolean value)
Deprecated.
Please use the corresponding type-specific method instead.
|
default java.lang.Boolean |
remove(java.lang.Object key)
Deprecated.
Please use the corresponding type-specific method instead.
|
default boolean |
removeBoolean(java.lang.Object key)
Removes the mapping with the given key (optional operation).
|
default boolean |
test(K operand) |
apply, clear, containsKey, size
default boolean test(K operand)
test
in interface java.util.function.Predicate<K>
default boolean put(K key, boolean value)
key
- the key.value
- the value.Function.put(Object,Object)
boolean getBoolean(java.lang.Object key)
key
- the key.Function.get(Object)
default boolean getOrDefault(java.lang.Object key, boolean 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 boolean removeBoolean(java.lang.Object key)
key
- the key.Function.remove(Object)
@Deprecated default java.lang.Boolean put(K key, java.lang.Boolean 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.Boolean 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.Boolean getOrDefault(java.lang.Object key, java.lang.Boolean 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.Boolean remove(java.lang.Object key)
key
- the key.null
if no value was present for the given key.Map.remove(Object)
default void defaultReturnValue(boolean 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 boolean 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.Boolean,? extends T> after)
andThen
in interface java.util.function.Function<K,java.lang.Boolean>
default Object2ByteFunction<K> andThenByte(Boolean2ByteFunction after)
default Byte2BooleanFunction composeByte(Byte2ObjectFunction<K> before)
default Object2ShortFunction<K> andThenShort(Boolean2ShortFunction after)
default Short2BooleanFunction composeShort(Short2ObjectFunction<K> before)
default Object2IntFunction<K> andThenInt(Boolean2IntFunction after)
default Int2BooleanFunction composeInt(Int2ObjectFunction<K> before)
default Object2LongFunction<K> andThenLong(Boolean2LongFunction after)
default Long2BooleanFunction composeLong(Long2ObjectFunction<K> before)
default Object2CharFunction<K> andThenChar(Boolean2CharFunction after)
default Char2BooleanFunction composeChar(Char2ObjectFunction<K> before)
default Object2FloatFunction<K> andThenFloat(Boolean2FloatFunction after)
default Float2BooleanFunction composeFloat(Float2ObjectFunction<K> before)
default Object2DoubleFunction<K> andThenDouble(Boolean2DoubleFunction after)
default Double2BooleanFunction composeDouble(Double2ObjectFunction<K> before)
default <T> Object2ObjectFunction<K,T> andThenObject(Boolean2ObjectFunction<? extends T> after)
default <T> Object2BooleanFunction<T> composeObject(Object2ObjectFunction<? super T,? extends K> before)
default <T> Object2ReferenceFunction<K,T> andThenReference(Boolean2ReferenceFunction<? extends T> after)
default <T> Reference2BooleanFunction<T> composeReference(Reference2ObjectFunction<? super T,? extends K> before)