ObjectFloatMap

sealed class ObjectFloatMap<K>

ObjectFloatMap is a container with a Map-like interface for keys with reference types and Float primitives for values.

The underlying implementation is designed to avoid allocations from boxing, and insertion, removal, retrieval, and iteration operations. Allocations may still happen on insertion when the underlying storage needs to grow to accommodate newly added entries to the table. In addition, this implementation minimizes memory usage by avoiding the use of separate objects to hold key/value pairs.

This implementation makes no guarantee as to the order of the keys and values stored, nor does it make guarantees that the order remains constant over time.

This implementation is not thread-safe: if multiple threads access this container concurrently, and one or more threads modify the structure of the map (insertion or removal for instance), the calling code must provide the appropriate synchronization. Multiple threads are safe to read from this map concurrently if no write is happening.

This implementation is read-only and only allows data to be queried. A mutable implementation is provided by MutableObjectFloatMap.

See also

Inheritors

Properties

Link copied to clipboard

Returns the number of key-value pairs that can be stored in this map without requiring internal storage reallocation.

Link copied to clipboard
val size: Int

Returns the number of key-value pairs in this map.

Functions

Link copied to clipboard
inline fun all(predicate: (K, Float) -> Boolean): Boolean

Returns true if all entries match the given predicate.

Link copied to clipboard
fun any(): Boolean

Returns true if this map has at least one entry.

inline fun any(predicate: (K, Float) -> Boolean): Boolean

Returns true if at least one entry matches the given predicate.

Link copied to clipboard
operator fun contains(key: K): Boolean

Returns true if the specified key is present in this hash map, false otherwise.

Link copied to clipboard
fun containsKey(key: K): Boolean

Returns true if the specified key is present in this hash map, false otherwise.

Link copied to clipboard

Returns true if the specified value is present in this hash map, false otherwise.

Link copied to clipboard
fun count(): Int

Returns the number of entries in this map.

inline fun count(predicate: (K, Float) -> Boolean): Int

Returns the number of entries matching the given predicate.

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean

Compares the specified object other with this hash map for equality. The two objects are considered equal if other:

Link copied to clipboard
inline fun forEach(block: (key: K, value: Float) -> Unit)

Iterates over every key/value pair stored in this map by invoking the specified block lambda.

Link copied to clipboard
inline fun forEachKey(block: (key: K) -> Unit)

Iterates over every key stored in this map by invoking the specified block lambda.

Link copied to clipboard
inline fun forEachValue(block: (value: Float) -> Unit)

Iterates over every value stored in this map by invoking the specified block lambda.

Link copied to clipboard
operator fun get(key: K): Float

Returns the value corresponding to the given key, or null if such a key is not present in the map.

Link copied to clipboard
fun getOrDefault(key: K, defaultValue: Float): Float

Returns the value to which the specified key is mapped, or defaultValue if this map contains no mapping for the key.

Link copied to clipboard
inline fun getOrElse(key: K, defaultValue: () -> Float): Float

Returns the value for the given key if the value is present and not null. Otherwise, returns the result of the defaultValue function.

Link copied to clipboard
open override fun hashCode(): Int

Returns the hash code value for this map. The hash code the sum of the hash codes of each key/value pair.

Link copied to clipboard

Indicates whether this map is empty.

Link copied to clipboard

Returns true if this map is not empty.

Link copied to clipboard
fun joinToString(separator: CharSequence = ", ", prefix: CharSequence = "", postfix: CharSequence = "", limit: Int = -1, truncated: CharSequence = "..."): String

Creates a String from the entries, separated by separator and using prefix before and postfix after, if supplied.

inline fun joinToString(separator: CharSequence = ", ", prefix: CharSequence = "", postfix: CharSequence = "", limit: Int = -1, truncated: CharSequence = "...", crossinline transform: (key: K, value: Float) -> CharSequence): String

Creates a String from the entries, separated by separator and using prefix before and postfix after, if supplied. Each entry is created with transform.

Link copied to clipboard
fun none(): Boolean

Returns true if this map has no entries.

Link copied to clipboard
open override fun toString(): String

Returns a string representation of this map. The map is denoted in the string by the {}. Each key/value pair present in the map is represented inside '{}by a substring of the form key=value, and pairs are separated by , `.