Class DoubleShortHashMap
- java.lang.Object
-
- org.eclipse.collections.impl.primitive.AbstractShortIterable
-
- org.eclipse.collections.impl.map.mutable.primitive.AbstractMutableShortValuesMap
-
- org.eclipse.collections.impl.map.mutable.primitive.DoubleShortHashMap
-
- All Implemented Interfaces:
java.io.Externalizable,java.io.Serializable,DoubleShortMap,MutableDoubleShortMap,MutableShortValuesMap,ShortValuesMap,PrimitiveIterable,ShortIterable,MutableDoubleKeysMap,DoubleKeysMap
public class DoubleShortHashMap extends AbstractMutableShortValuesMap implements MutableDoubleShortMap, java.io.Externalizable, MutableDoubleKeysMap
This file was automatically generated from template file primitivePrimitiveHashMap.stg.- Since:
- 3.0.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classDoubleShortHashMap.InternalShortIteratorprivate classDoubleShortHashMap.KeySetprivate classDoubleShortHashMap.KeySetIteratorprivate classDoubleShortHashMap.KeysViewprivate classDoubleShortHashMap.KeyValuesViewprivate classDoubleShortHashMap.ValuesCollection-
Nested classes/interfaces inherited from class org.eclipse.collections.impl.map.mutable.primitive.AbstractMutableShortValuesMap
AbstractMutableShortValuesMap.AbstractShortValuesCollection, AbstractMutableShortValuesMap.SentinelValues
-
-
Field Summary
Fields Modifier and Type Field Description private static intCACHE_LINE_SIZEprivate booleancopyKeysOnWriteprivate static intDEFAULT_INITIAL_CAPACITYprivate static doubleEMPTY_KEYprivate static shortEMPTY_VALUEprivate static intINITIAL_LINEAR_PROBEprivate static intKEY_SIZEprivate double[]keysprivate intoccupiedWithDataprivate intoccupiedWithSentinelsprivate static doubleREMOVED_KEYprivate AbstractMutableShortValuesMap.SentinelValuessentinelValuesprivate static longserialVersionUIDprivate short[]values
-
Constructor Summary
Constructors Constructor Description DoubleShortHashMap()DoubleShortHashMap(int initialCapacity)DoubleShortHashMap(DoubleShortMap map)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description private voidaddKeyValueAtIndex(double key, short value, int index)shortaddToValue(double key, short toBeAdded)Increments and updates the value associated with the key, if a value exists, or sets the value to be the specified value if one does not.protected voidallocateTable(int sizeToAllocate)booleanallSatisfyKeyValue(DoubleShortPredicate predicate)MutableDoubleShortMapasSynchronized()Returns a synchronized view of this map, delegating all operations to this map but ensuring only one caller has access to the map at a time.MutableDoubleShortMapasUnmodifiable()Returns an unmodifiable view of this map, delegating all read-only operations to this map and throwing anUnsupportedOperationExceptionfor all mutating operations.voidclear()Removes all entries from this map.voidcompact()Deprecated.since 12.0 - UsetrimToSize()insteadbooleancontainsKey(double key)Returns whether or not the key is present in the map.private voidcopyKeys()booleanequals(java.lang.Object obj)Follows the same general contract asMap.equals(Object).private shortfastGetIfAbsent(double key, short ifAbsent)MutableShortDoubleMapflipUniqueValues()Return the ShortDoubleMap that is obtained by flipping the direction of this map and making the associations from value to key.voidforEachKey(DoubleProcedure procedure)Iterates through each key in the map, invoking the procedure for each.voidforEachKeyValue(DoubleShortProcedure procedure)Iterates through each key/value pair in the map, invoking the procedure for each.shortget(double key)Retrieves the value associated with the key.shortgetAndPut(double key, short putValue, short defaultValue)Retrieves the value associated with the key if one exists; associates a putValue with the key.protected shortgetEmptyValue()private shortgetForSentinel(double key, short ifAbsent)shortgetIfAbsent(double key, short ifAbsent)Retrieves the value associated with the key, returning the specified default value if no such mapping exists.shortgetIfAbsentPut(double key, short value)Retrieves the value associated with the key if one exists; if it does not, associates a value with the key.shortgetIfAbsentPut(double key, ShortFunction0 function)Retrieves the value associated with the key if one exists; if it does not, invokes the supplier and associates the result with the key.<P> shortgetIfAbsentPutWith(double key, ShortFunction<? super P> function, P parameter)Retrieves the value associated with the key if one exists; if it does not, invokes the value function with the parameter and associates the result with the key.shortgetIfAbsentPutWithKey(double key, DoubleToShortFunction function)Retrieves the value associated with the key if one exists; if it does not, associates the result of invoking the value function with the key.protected intgetOccupiedWithData()shortgetOrThrow(double key)Retrieves the value associated with the key, throwing anIllegalStateExceptionif no such mapping exists.protected AbstractMutableShortValuesMap.SentinelValuesgetSentinelValues()protected intgetTableSize()protected shortgetValueAtIndex(int index)inthashCode()Follows the same general contract asMap.hashCode().<V> VinjectInto(V injectedValue, ObjectShortToObjectFunction<? super V,? extends V> function)private static booleanisEmptyKey(double key)private static booleanisNonSentinel(double key)protected booleanisNonSentinelAtIndex(int index)private static booleanisRemovedKey(double key)MutableDoubleSetkeySet()Returns a set containing all the keys in this map.LazyDoubleIterablekeysView()Returns a view of the keys in this map.RichIterable<DoubleShortPair>keyValuesView()Returns a view of the key/value pairs in this map.private intmask(int spread)private intmaxOccupiedWithData()static DoubleShortHashMapnewWithKeysValues(double key1, short value1)static DoubleShortHashMapnewWithKeysValues(double key1, short value1, double key2, short value2)static DoubleShortHashMapnewWithKeysValues(double key1, short value1, double key2, short value2, double key3, short value3)static DoubleShortHashMapnewWithKeysValues(double key1, short value1, double key2, short value2, double key3, short value3, double key4, short value4)(package private) intprobe(double element)(package private) intprobeThree(double element, int removedIndex)(package private) intprobeTwo(double element, int removedIndex)voidput(double key, short value)Associates a value with the specified key.voidputAll(DoubleShortMap map)Puts all of the key/value mappings from the specified map into this map.private voidputForEmptySentinel(short value)private voidputForRemovedSentinel(short value)voidreadExternal(java.io.ObjectInput in)private voidrehash(int newCapacity)private voidrehashAndGrow()DoubleShortHashMapreject(DoubleShortPredicate predicate)Return a copy of this map containing only the key/value pairs that do not match the predicate.voidremove(double key)Removes the mapping associated with the key, if one exists, from the map.voidremoveKey(double key)Removes the mapping associated with the key, if one exists, from the map.private voidremoveKeyAtIndex(int index)shortremoveKeyIfAbsent(double key, short value)Removes the mapping associated with the key, if one exists, from the map, returning the previously associated value with the key.DoubleShortHashMapselect(DoubleShortPredicate predicate)Return a copy of this map containing only the key/value pairs that match the predicate.protected voidsetSentinelValuesNull()MutableShortIteratorshortIterator()Returns a primitive iterator that can be used to iterate over the ShortIterable in an imperative style.private shortslowGetIfAbsent(double key, short ifAbsent)private shortslowGetIfAbsentTwo(double key, short ifAbsent)private intsmallestPowerOfTwoGreaterThan(int n)(package private) intspreadAndMask(double element)(package private) intspreadTwoAndMask(double element)ImmutableDoubleShortMaptoImmutable()Returns a copy of this map that is immutable (if this map is mutable) or itself if it is already immutable.java.lang.StringtoString()Returns a string with the elements of this iterable separated by commas with spaces and enclosed in square brackets.booleantrimToSize()shortupdateValue(double key, short initialValueIfAbsent, ShortToShortFunction function)Updates or sets the value associated with the key by applying the function to the existing value, if one exists, or to the specified initial value if one does not.voidupdateValues(DoubleShortToShortFunction function)Updates the values in-place.MutableShortCollectionvalues()Returns the values in this map as a separate collection.DoubleShortHashMapwithKeysValues(double key1, short value1, double key2, short value2)DoubleShortHashMapwithKeysValues(double key1, short value1, double key2, short value2, double key3, short value3)DoubleShortHashMapwithKeysValues(double key1, short value1, double key2, short value2, double key3, short value3, double key4, short value4)DoubleShortHashMapwithKeyValue(double key1, short value1)Associates a value with the specified key.DoubleShortHashMapwithoutAllKeys(DoubleIterable keys)Removes the mappings associated with all the keys, if they exist, from this map.DoubleShortHashMapwithoutKey(double key)Removes the mapping associated with the key, if one exists, from this map.voidwriteExternal(java.io.ObjectOutput out)-
Methods inherited from class org.eclipse.collections.impl.map.mutable.primitive.AbstractMutableShortValuesMap
addEmptyKeyValue, addRemovedKeyValue, allSatisfy, anySatisfy, appendString, chunk, collect, contains, containsAll, containsValue, count, detectIfNone, each, forEachValue, isEmpty, max, min, notEmpty, reject, removeEmptyKey, removeRemovedKey, select, size, sum, toArray, toArray
-
Methods inherited from class org.eclipse.collections.impl.primitive.AbstractShortIterable
asLazy, average, maxIfEmpty, median, minIfEmpty, toBag, toList, toSet, toSortedArray, toSortedList
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.collections.impl.map.primitive.DoubleKeysMap
isEmpty, notEmpty, size
-
Methods inherited from interface org.eclipse.collections.api.map.primitive.DoubleShortMap
injectIntoKeyValue
-
Methods inherited from interface org.eclipse.collections.api.map.primitive.MutableDoubleShortMap
putPair, withAllKeyValues
-
Methods inherited from interface org.eclipse.collections.api.map.primitive.MutableShortValuesMap
collect, reject, select
-
Methods inherited from interface org.eclipse.collections.api.PrimitiveIterable
appendString, appendString, appendString, isEmpty, makeString, makeString, makeString, notEmpty, size
-
Methods inherited from interface org.eclipse.collections.api.ShortIterable
allSatisfy, anySatisfy, asLazy, average, averageIfEmpty, chunk, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectInt, collectLong, collectShort, contains, containsAll, containsAll, containsAny, containsAny, containsNone, containsNone, count, detectIfNone, each, flatCollect, forEach, injectIntoBoolean, injectIntoByte, injectIntoChar, injectIntoDouble, injectIntoFloat, injectIntoInt, injectIntoLong, injectIntoShort, max, maxIfEmpty, median, medianIfEmpty, min, minIfEmpty, noneSatisfy, reduce, reduceIfEmpty, reject, select, sum, summaryStatistics, toArray, toArray, toBag, toList, toSet, toSortedArray, toSortedList, toSortedList, toSortedListBy, toSortedListBy
-
Methods inherited from interface org.eclipse.collections.api.map.primitive.ShortValuesMap
containsValue, forEachValue, tap
-
-
-
-
Field Detail
-
EMPTY_VALUE
private static final short EMPTY_VALUE
- See Also:
- Constant Field Values
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
EMPTY_KEY
private static final double EMPTY_KEY
- See Also:
- Constant Field Values
-
REMOVED_KEY
private static final double REMOVED_KEY
- See Also:
- Constant Field Values
-
CACHE_LINE_SIZE
private static final int CACHE_LINE_SIZE
- See Also:
- Constant Field Values
-
KEY_SIZE
private static final int KEY_SIZE
- See Also:
- Constant Field Values
-
INITIAL_LINEAR_PROBE
private static final int INITIAL_LINEAR_PROBE
- See Also:
- Constant Field Values
-
DEFAULT_INITIAL_CAPACITY
private static final int DEFAULT_INITIAL_CAPACITY
- See Also:
- Constant Field Values
-
keys
private double[] keys
-
values
private short[] values
-
occupiedWithData
private int occupiedWithData
-
occupiedWithSentinels
private int occupiedWithSentinels
-
sentinelValues
private AbstractMutableShortValuesMap.SentinelValues sentinelValues
-
copyKeysOnWrite
private boolean copyKeysOnWrite
-
-
Constructor Detail
-
DoubleShortHashMap
public DoubleShortHashMap()
-
DoubleShortHashMap
public DoubleShortHashMap(int initialCapacity)
-
DoubleShortHashMap
public DoubleShortHashMap(DoubleShortMap map)
-
-
Method Detail
-
newWithKeysValues
public static DoubleShortHashMap newWithKeysValues(double key1, short value1)
-
newWithKeysValues
public static DoubleShortHashMap newWithKeysValues(double key1, short value1, double key2, short value2)
-
newWithKeysValues
public static DoubleShortHashMap newWithKeysValues(double key1, short value1, double key2, short value2, double key3, short value3)
-
newWithKeysValues
public static DoubleShortHashMap newWithKeysValues(double key1, short value1, double key2, short value2, double key3, short value3, double key4, short value4)
-
smallestPowerOfTwoGreaterThan
private int smallestPowerOfTwoGreaterThan(int n)
-
getOccupiedWithData
protected int getOccupiedWithData()
- Specified by:
getOccupiedWithDatain classAbstractMutableShortValuesMap
-
getSentinelValues
protected AbstractMutableShortValuesMap.SentinelValues getSentinelValues()
- Specified by:
getSentinelValuesin classAbstractMutableShortValuesMap
-
setSentinelValuesNull
protected void setSentinelValuesNull()
- Specified by:
setSentinelValuesNullin classAbstractMutableShortValuesMap
-
getEmptyValue
protected short getEmptyValue()
- Specified by:
getEmptyValuein classAbstractMutableShortValuesMap
-
getTableSize
protected int getTableSize()
- Specified by:
getTableSizein classAbstractMutableShortValuesMap
-
getValueAtIndex
protected short getValueAtIndex(int index)
- Specified by:
getValueAtIndexin classAbstractMutableShortValuesMap
-
equals
public boolean equals(java.lang.Object obj)
Description copied from interface:DoubleShortMapFollows the same general contract asMap.equals(Object).- Specified by:
equalsin interfaceDoubleShortMap- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
Description copied from interface:DoubleShortMapFollows the same general contract asMap.hashCode().- Specified by:
hashCodein interfaceDoubleShortMap- Overrides:
hashCodein classjava.lang.Object
-
toString
public java.lang.String toString()
Description copied from interface:PrimitiveIterableReturns a string with the elements of this iterable separated by commas with spaces and enclosed in square brackets.Assert.assertEquals("[]", IntLists.mutable.empty().toString()); Assert.assertEquals("[1]", IntLists.mutable.with(1).toString()); Assert.assertEquals("[1, 2, 3]", IntLists.mutable.with(1, 2, 3).toString());- Specified by:
toStringin interfaceDoubleShortMap- Specified by:
toStringin interfacePrimitiveIterable- Overrides:
toStringin classAbstractShortIterable- Returns:
- a string representation of this PrimitiveIterable
- See Also:
AbstractCollection.toString()
-
shortIterator
public MutableShortIterator shortIterator()
Description copied from interface:ShortIterableReturns a primitive iterator that can be used to iterate over the ShortIterable in an imperative style.- Specified by:
shortIteratorin interfaceMutableShortValuesMap- Specified by:
shortIteratorin interfaceShortIterable
-
injectInto
public <V> V injectInto(V injectedValue, ObjectShortToObjectFunction<? super V,? extends V> function)- Specified by:
injectIntoin interfaceShortIterable
-
clear
public void clear()
Description copied from interface:MutableShortValuesMapRemoves all entries from this map.- Specified by:
clearin interfaceMutableDoubleKeysMap- Specified by:
clearin interfaceMutableShortValuesMap
-
put
public void put(double key, short value)Description copied from interface:MutableDoubleShortMapAssociates a value with the specified key. If a value is already associated with the key in this map, it will be replaced withvalue.- Specified by:
putin interfaceMutableDoubleShortMap- Parameters:
key- the keyvalue- the value to associate withvalue
-
putForRemovedSentinel
private void putForRemovedSentinel(short value)
-
putForEmptySentinel
private void putForEmptySentinel(short value)
-
putAll
public void putAll(DoubleShortMap map)
Description copied from interface:MutableDoubleShortMapPuts all of the key/value mappings from the specified map into this map. If this map already has a value associated with one of the keys in the map, it will be replaced with the value inmap.- Specified by:
putAllin interfaceMutableDoubleShortMap- Parameters:
map- the map to copy into this map
-
updateValues
public void updateValues(DoubleShortToShortFunction function)
Description copied from interface:MutableDoubleShortMapUpdates the values in-place.- Specified by:
updateValuesin interfaceMutableDoubleShortMap- Parameters:
function- that takes a key and its value and that returns a new value for this key
-
removeKey
public void removeKey(double key)
Description copied from interface:MutableDoubleShortMapRemoves the mapping associated with the key, if one exists, from the map.- Specified by:
removeKeyin interfaceMutableDoubleKeysMap- Specified by:
removeKeyin interfaceMutableDoubleShortMap- Parameters:
key- the key to remove- See Also:
MutableDoubleShortMap.remove(double)
-
remove
public void remove(double key)
Description copied from interface:MutableDoubleShortMapRemoves the mapping associated with the key, if one exists, from the map.- Specified by:
removein interfaceMutableDoubleShortMap- Parameters:
key- the key to remove- See Also:
MutableDoubleShortMap.removeKey(double)
-
removeKeyIfAbsent
public short removeKeyIfAbsent(double key, short value)Description copied from interface:MutableDoubleShortMapRemoves the mapping associated with the key, if one exists, from the map, returning the previously associated value with the key. If no mapping existed for the key, the specified default value is returned.- Specified by:
removeKeyIfAbsentin interfaceMutableDoubleShortMap- Parameters:
key- the key to removevalue- the default value to return if no mapping for the key exists- Returns:
- the value previously associated with the key, if one existed,
or
valueif not
-
getIfAbsentPut
public short getIfAbsentPut(double key, short value)Description copied from interface:MutableDoubleShortMapRetrieves the value associated with the key if one exists; if it does not, associates a value with the key.- Specified by:
getIfAbsentPutin interfaceMutableDoubleShortMap- Parameters:
key- the keyvalue- the value to associate withkeyif no such mapping exists- Returns:
- the value associated with key, if one exists, or
valueif not
-
getAndPut
public short getAndPut(double key, short putValue, short defaultValue)Description copied from interface:MutableDoubleShortMapRetrieves the value associated with the key if one exists; associates a putValue with the key.- Specified by:
getAndPutin interfaceMutableDoubleShortMap- Parameters:
key- the keyputValue- the value to associate withkeyif no such mapping existsdefaultValue- the value to return if no mapping associated withkeyexists- Returns:
- the value associated with key, if one exists, or
defaultValueif not
-
getIfAbsentPut
public short getIfAbsentPut(double key, ShortFunction0 function)Description copied from interface:MutableDoubleShortMapRetrieves the value associated with the key if one exists; if it does not, invokes the supplier and associates the result with the key.- Specified by:
getIfAbsentPutin interfaceMutableDoubleShortMap- Parameters:
key- the keyfunction- the supplier that provides the value if no mapping exists forkey- Returns:
- the value associated with the key, if one exists, or the result of
invoking
functionif not
-
getIfAbsentPutWith
public <P> short getIfAbsentPutWith(double key, ShortFunction<? super P> function, P parameter)Description copied from interface:MutableDoubleShortMapRetrieves the value associated with the key if one exists; if it does not, invokes the value function with the parameter and associates the result with the key.- Specified by:
getIfAbsentPutWithin interfaceMutableDoubleShortMap- Type Parameters:
P- the type of the value function'sparameter- Parameters:
key- the keyfunction- the function that provides the value if no mapping exists. The specifiedparameterwill be passed as the argument to the function.parameter- the parameter to provide tofunctionif no value exists forkey- Returns:
- the value associated with the key, if one exists, or the result of
invoking
functionwithparameterif not
-
getIfAbsentPutWithKey
public short getIfAbsentPutWithKey(double key, DoubleToShortFunction function)Description copied from interface:MutableDoubleShortMapRetrieves the value associated with the key if one exists; if it does not, associates the result of invoking the value function with the key.- Specified by:
getIfAbsentPutWithKeyin interfaceMutableDoubleShortMap- Parameters:
key- the keyfunction- the function that provides the value if no mapping exists. Thekeywill be passed as the argument to the function.- Returns:
- the value associated with the key, if one exists, or the result of
invoking
functionwithkeyif not
-
addToValue
public short addToValue(double key, short toBeAdded)Description copied from interface:MutableDoubleShortMapIncrements and updates the value associated with the key, if a value exists, or sets the value to be the specified value if one does not.- Specified by:
addToValuein interfaceMutableDoubleShortMap- Parameters:
key- the keytoBeAdded- the amount to increment the existing value, if one exists, or to use as the initial value if one does not- Returns:
- the value after incrementing
toBeAddedto the existing value associated withkeyortoBeAddedif one does not
-
addKeyValueAtIndex
private void addKeyValueAtIndex(double key, short value, int index)
-
removeKeyAtIndex
private void removeKeyAtIndex(int index)
-
copyKeys
private void copyKeys()
-
updateValue
public short updateValue(double key, short initialValueIfAbsent, ShortToShortFunction function)Description copied from interface:MutableDoubleShortMapUpdates or sets the value associated with the key by applying the function to the existing value, if one exists, or to the specified initial value if one does not.- Specified by:
updateValuein interfaceMutableDoubleShortMap- Parameters:
key- the keyinitialValueIfAbsent- the initial value to supply to the function if no mapping exists for the keyfunction- the function that returns the updated value based on the current value or the initial value, if no value exists- Returns:
- the new value associated with the key, either as a result of applying
functionto the value already associated with the key or as a result of applying it toinitialValueIfAbsentand associating the result withkey
-
withKeyValue
public DoubleShortHashMap withKeyValue(double key1, short value1)
Description copied from interface:MutableDoubleShortMapAssociates a value with the specified key. If a value is already associated with the key in this map, it will be replaced withvalue.- Specified by:
withKeyValuein interfaceMutableDoubleShortMap- Parameters:
key1- the keyvalue1- the value to associate withvalue- Returns:
- this map
- See Also:
MutableDoubleShortMap.put(double, short)
-
withKeysValues
public DoubleShortHashMap withKeysValues(double key1, short value1, double key2, short value2)
-
withKeysValues
public DoubleShortHashMap withKeysValues(double key1, short value1, double key2, short value2, double key3, short value3)
-
withKeysValues
public DoubleShortHashMap withKeysValues(double key1, short value1, double key2, short value2, double key3, short value3, double key4, short value4)
-
withoutKey
public DoubleShortHashMap withoutKey(double key)
Description copied from interface:MutableDoubleShortMapRemoves the mapping associated with the key, if one exists, from this map.- Specified by:
withoutKeyin interfaceMutableDoubleShortMap- Parameters:
key- the key to remove- Returns:
- this map
- See Also:
MutableDoubleShortMap.remove(double)
-
withoutAllKeys
public DoubleShortHashMap withoutAllKeys(DoubleIterable keys)
Description copied from interface:MutableDoubleShortMapRemoves the mappings associated with all the keys, if they exist, from this map.- Specified by:
withoutAllKeysin interfaceMutableDoubleShortMap- Parameters:
keys- the keys to remove- Returns:
- this map
- See Also:
MutableDoubleShortMap.remove(double)
-
asUnmodifiable
public MutableDoubleShortMap asUnmodifiable()
Description copied from interface:MutableDoubleShortMapReturns an unmodifiable view of this map, delegating all read-only operations to this map and throwing anUnsupportedOperationExceptionfor all mutating operations. This avoids the overhead of copying the map when callingDoubleShortMap.toImmutable()while still providing immutability.- Specified by:
asUnmodifiablein interfaceMutableDoubleShortMap- Returns:
- an unmodifiable view of this map
-
asSynchronized
public MutableDoubleShortMap asSynchronized()
Description copied from interface:MutableDoubleShortMapReturns a synchronized view of this map, delegating all operations to this map but ensuring only one caller has access to the map at a time.- Specified by:
asSynchronizedin interfaceMutableDoubleShortMap- Returns:
- a synchronized view of this map
-
toImmutable
public ImmutableDoubleShortMap toImmutable()
Description copied from interface:DoubleShortMapReturns a copy of this map that is immutable (if this map is mutable) or itself if it is already immutable.- Specified by:
toImmutablein interfaceDoubleShortMap- Returns:
- an immutable map that is equivalent to this one
-
get
public short get(double key)
Description copied from interface:DoubleShortMapRetrieves the value associated with the key. If no mapping exists for the key, the default value (usually0) is returned.- Specified by:
getin interfaceDoubleShortMap- Parameters:
key- the key- Returns:
- the value associated with the key, or the default value if no such mapping exists
-
getIfAbsent
public short getIfAbsent(double key, short ifAbsent)Description copied from interface:DoubleShortMapRetrieves the value associated with the key, returning the specified default value if no such mapping exists.- Specified by:
getIfAbsentin interfaceDoubleShortMap- Parameters:
key- the keyifAbsent- the default value to return if no mapping exists forkey- Returns:
- the value associated with the key, or
ifAbsentif no such mapping exists.
-
getForSentinel
private short getForSentinel(double key, short ifAbsent)
-
slowGetIfAbsent
private short slowGetIfAbsent(double key, short ifAbsent)
-
fastGetIfAbsent
private short fastGetIfAbsent(double key, short ifAbsent)
-
slowGetIfAbsentTwo
private short slowGetIfAbsentTwo(double key, short ifAbsent)
-
getOrThrow
public short getOrThrow(double key)
Description copied from interface:DoubleShortMapRetrieves the value associated with the key, throwing anIllegalStateExceptionif no such mapping exists.- Specified by:
getOrThrowin interfaceDoubleShortMap- Parameters:
key- the key- Returns:
- the value associated with the key
-
containsKey
public boolean containsKey(double key)
Description copied from interface:DoubleShortMapReturns whether or not the key is present in the map.- Specified by:
containsKeyin interfaceDoubleKeysMap- Specified by:
containsKeyin interfaceDoubleShortMap- Parameters:
key- the key- Returns:
- if a mapping exists in this map for the key
-
forEachKey
public void forEachKey(DoubleProcedure procedure)
Description copied from interface:DoubleShortMapIterates through each key in the map, invoking the procedure for each.- Specified by:
forEachKeyin interfaceDoubleKeysMap- Specified by:
forEachKeyin interfaceDoubleShortMap- Parameters:
procedure- the procedure to invoke for each key
-
forEachKeyValue
public void forEachKeyValue(DoubleShortProcedure procedure)
Description copied from interface:DoubleShortMapIterates through each key/value pair in the map, invoking the procedure for each.- Specified by:
forEachKeyValuein interfaceDoubleShortMap- Parameters:
procedure- the procedure to invoke for each key/value pair
-
allSatisfyKeyValue
public boolean allSatisfyKeyValue(DoubleShortPredicate predicate)
- Specified by:
allSatisfyKeyValuein interfaceDoubleShortMap- Since:
- 12.0
-
keysView
public LazyDoubleIterable keysView()
Description copied from interface:DoubleShortMapReturns a view of the keys in this map. This iterable is backed by the map, so any modifications to the underlying map will be reflected in the keys returned by the iterable.- Specified by:
keysViewin interfaceDoubleShortMap- Returns:
- a view of the keys in this map
-
keyValuesView
public RichIterable<DoubleShortPair> keyValuesView()
Description copied from interface:DoubleShortMapReturns a view of the key/value pairs in this map. This iterable is backed by the map, so any modifications to the underlying map will be reflected in the pairs returned by the iterable.- Specified by:
keyValuesViewin interfaceDoubleShortMap- Returns:
- a view of the keys in this map
-
flipUniqueValues
public MutableShortDoubleMap flipUniqueValues()
Description copied from interface:DoubleShortMapReturn the ShortDoubleMap that is obtained by flipping the direction of this map and making the associations from value to key.- Specified by:
flipUniqueValuesin interfaceDoubleShortMap- Specified by:
flipUniqueValuesin interfaceMutableDoubleShortMap
-
select
public DoubleShortHashMap select(DoubleShortPredicate predicate)
Description copied from interface:DoubleShortMapReturn a copy of this map containing only the key/value pairs that match the predicate.- Specified by:
selectin interfaceDoubleShortMap- Specified by:
selectin interfaceMutableDoubleShortMap- Parameters:
predicate- the predicate to determine which key/value pairs in this map should be included in the returned map- Returns:
- a copy of this map with the matching key/value pairs
-
reject
public DoubleShortHashMap reject(DoubleShortPredicate predicate)
Description copied from interface:DoubleShortMapReturn a copy of this map containing only the key/value pairs that do not match the predicate.- Specified by:
rejectin interfaceDoubleShortMap- Specified by:
rejectin interfaceMutableDoubleShortMap- Parameters:
predicate- the predicate to determine which key/value pairs in this map should be excluded from the returned map- Returns:
- a copy of this map without the matching key/value pairs
-
writeExternal
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException- Specified by:
writeExternalin interfacejava.io.Externalizable- Throws:
java.io.IOException
-
readExternal
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException- Specified by:
readExternalin interfacejava.io.Externalizable- Throws:
java.io.IOExceptionjava.lang.ClassNotFoundException
-
trimToSize
public boolean trimToSize()
- Since:
- 12.0
-
compact
@Deprecated public void compact()
Deprecated.since 12.0 - UsetrimToSize()insteadRehashes every element in the set into a new backing table of the smallest possible size and eliminating removed sentinels.
-
rehashAndGrow
private void rehashAndGrow()
-
rehash
private void rehash(int newCapacity)
-
probe
int probe(double element)
-
probeTwo
int probeTwo(double element, int removedIndex)
-
probeThree
int probeThree(double element, int removedIndex)
-
spreadAndMask
int spreadAndMask(double element)
-
spreadTwoAndMask
int spreadTwoAndMask(double element)
-
mask
private int mask(int spread)
-
allocateTable
protected void allocateTable(int sizeToAllocate)
-
isEmptyKey
private static boolean isEmptyKey(double key)
-
isRemovedKey
private static boolean isRemovedKey(double key)
-
isNonSentinel
private static boolean isNonSentinel(double key)
-
isNonSentinelAtIndex
protected boolean isNonSentinelAtIndex(int index)
- Specified by:
isNonSentinelAtIndexin classAbstractMutableShortValuesMap
-
maxOccupiedWithData
private int maxOccupiedWithData()
-
keySet
public MutableDoubleSet keySet()
Description copied from interface:DoubleShortMapReturns a set containing all the keys in this map. The set is backed by the map, so any modifications to the returned set will affect this map.- Specified by:
keySetin interfaceDoubleShortMap- Returns:
- a mutable set containing the keys in this map
-
values
public MutableShortCollection values()
Description copied from interface:ShortValuesMapReturns the values in this map as a separate collection. The returned collection is backed by the map, so any changes made to the returned collection will affect the state of this map.- Specified by:
valuesin interfaceShortValuesMap- Returns:
- the values as a collection backed by this map
-
-