Package org.elasticsearch.common.collect
Class ImmutableOpenMap<KType,VType>
java.lang.Object
org.elasticsearch.common.collect.ImmutableOpenMap<KType,VType>
- All Implemented Interfaces:
Iterable<com.carrotsearch.hppc.cursors.ObjectObjectCursor<KType,VType>>
public final class ImmutableOpenMap<KType,VType>
extends Object
implements Iterable<com.carrotsearch.hppc.cursors.ObjectObjectCursor<KType,VType>>
An immutable map implementation based on open hash map.
Can be constructed using a builder()
, or using builder(ImmutableOpenMap)
(which is an optimized
option to copy over existing content and modify it).
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic <KType, VType>
ImmutableOpenMap.Builder<KType,VType>builder()
static <KType, VType>
ImmutableOpenMap.Builder<KType,VType>builder(int size)
static <KType, VType>
ImmutableOpenMap.Builder<KType,VType>builder(ImmutableOpenMap<KType,VType> map)
boolean
containsKey(KType key)
Returnstrue
if this container has an association to a value for the given key.static <KType, VType>
ImmutableOpenMap<KType,VType>copyOf(com.carrotsearch.hppc.ObjectObjectMap<KType,VType> map)
boolean
getOrDefault(KType key, VType defaultValue)
int
hashCode()
boolean
isEmpty()
iterator()
Returns a cursor over the entries (key-value pairs) in this map.com.carrotsearch.hppc.ObjectLookupContainer<KType>
keys()
Returns a specialized view of the keys of this associated container.keysIt()
Returns a direct iterator over the keys.static <KType, VType>
ImmutableOpenMap<KType,VType>of()
int
size()
toString()
com.carrotsearch.hppc.ObjectContainer<VType>
values()
valuesIt()
Returns a direct iterator over the keys.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
get
- Returns:
- Returns the value associated with the given key or the default value
for the key type, if the key is not associated with any value.
Important note: For primitive type values, the value returned for a non-existing key may not be the default value of the primitive type (it may be any value previously assigned to that slot).
-
getOrDefault
- Returns:
- Returns the value associated with the given key or the provided default value if the key is not associated with any value.
-
containsKey
Returnstrue
if this container has an association to a value for the given key. -
size
public int size()- Returns:
- Returns the current size (number of assigned keys) in the container.
-
isEmpty
public boolean isEmpty()- Returns:
- Return
true
if this hash map contains no assigned keys.
-
iterator
Returns a cursor over the entries (key-value pairs) in this map. The iterator is implemented as a cursor and it returns the same cursor instance on every call toIterator.next()
. To read the current key and value use the cursor's public fields. An example is shown below.for (IntShortCursor c : intShortMap) { System.out.println("index=" + c.index + " key=" + c.key + " value=" + c.value); }
The
index
field inside the cursor gives the internal index inside the container's implementation. The interpretation of this index depends on to the container. -
keys
Returns a specialized view of the keys of this associated container. The view additionally implementsObjectLookupContainer
. -
keysIt
Returns a direct iterator over the keys. -
values
- Returns:
- Returns a container with all values stored in this map.
-
valuesIt
Returns a direct iterator over the keys. -
toString
-
equals
-
hashCode
public int hashCode() -
of
-
copyOf
public static <KType, VType> ImmutableOpenMap<KType,VType> copyOf(com.carrotsearch.hppc.ObjectObjectMap<KType,VType> map)- Returns:
- An immutable copy of the given map
-
builder
-
builder
-
builder
public static <KType, VType> ImmutableOpenMap.Builder<KType,VType> builder(ImmutableOpenMap<KType,VType> map)
-