Class ByteBooleanHashMap
java.lang.Object
org.eclipse.collections.impl.primitive.AbstractBooleanIterable
org.eclipse.collections.impl.map.mutable.primitive.AbstractMutableBooleanValuesMap
org.eclipse.collections.impl.map.mutable.primitive.ByteBooleanHashMap
- All Implemented Interfaces:
Externalizable, Serializable, BooleanIterable, BooleanValuesMap, ByteBooleanMap, MutableBooleanValuesMap, MutableByteBooleanMap, PrimitiveIterable, MutableByteKeysMap, ByteKeysMap
public class ByteBooleanHashMap
extends AbstractMutableBooleanValuesMap
implements MutableByteBooleanMap, MutableByteKeysMap, Externalizable
This file was automatically generated from template file primitiveBooleanHashMap.stg.
- Since:
- 3.0.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate classprivate classprivate classprivate classprivate classprivate classNested classes/interfaces inherited from class AbstractMutableBooleanValuesMap
AbstractMutableBooleanValuesMap.AbstractBooleanValuesCollection, AbstractMutableBooleanValuesMap.SentinelValues -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intprivate static final intprivate static final floatDeprecated.in 5.1.0.private static final byte(package private) static final booleanprivate static final intprivate static final intprivate byte[]private static final intprivate static final intprivate intprivate intprivate static final byteprivate static final longprivate BitSet -
Constructor Summary
ConstructorsConstructorDescriptionByteBooleanHashMap(int initialCapacity) ByteBooleanHashMap(int initialCapacity, float loadFactor) Deprecated.in 5.1.0. -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddKeyValueAtIndex(byte key, boolean value, int index) protected voidallocateTable(int sizeToAllocate) 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.Returns an unmodifiable view of this map, delegating all read-only operations to this map and throwing anUnsupportedOperationExceptionfor all mutating operations.Returns a primitive iterator that can be used to iterate over the BooleanIterable in an imperative style.voidclear()Removes all entries from this map.voidcompact()Deprecated.since 12.0 - UsetrimToSize()insteadbooleancontainsKey(byte key) Returns whether or not the key is present in the map.booleancontainsValue(boolean value) Returns whether or not this map contains the value.booleanFollows the same general contract asMap.equals(Object).private intfastCeil(float v) voidforEachKey(ByteProcedure procedure) Iterates through each key in the map, invoking the procedure for each.voidforEachKeyValue(ByteBooleanProcedure procedure) Iterates through each key/value pair in the map, invoking the procedure for each.booleanget(byte key) Retrieves the value associated with the key.protected booleanbooleangetIfAbsent(byte key, boolean ifAbsent) Retrieves the value associated with the key, returning the specified default value if no such mapping exists.booleangetIfAbsentPut(byte key, boolean value) Retrieves the value associated with the key if one exists; if it does not, associates a value with the key.booleangetIfAbsentPut(byte key, BooleanFunction0 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> booleangetIfAbsentPutWith(byte key, BooleanFunction<? 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.booleangetIfAbsentPutWithKey(byte key, ByteToBooleanFunction 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 intbooleangetOrThrow(byte key) Retrieves the value associated with the key, throwing anIllegalStateExceptionif no such mapping exists.protected intprotected booleangetValueAtIndex(int index) inthashCode()Follows the same general contract asMap.hashCode().private static booleanisEmptyKey(byte key) private static booleanisNonSentinel(byte key) protected booleanisNonSentinelAtIndex(int index) private static booleanisRemovedKey(byte key) keySet()Returns a set containing all the keys in this map.keysView()Returns a view of the keys in this map.Returns a view of the key/value pairs in this map.private intmask(int spread) private intprivate intstatic ByteBooleanHashMapnewWithKeysValues(byte key1, boolean value1) static ByteBooleanHashMapnewWithKeysValues(byte key1, boolean value1, byte key2, boolean value2) static ByteBooleanHashMapnewWithKeysValues(byte key1, boolean value1, byte key2, boolean value2, byte key3, boolean value3) static ByteBooleanHashMapnewWithKeysValues(byte key1, boolean value1, byte key2, boolean value2, byte key3, boolean value3, byte key4, boolean value4) (package private) intprobe(byte element) voidput(byte key, boolean value) Associates a value with the specified key.voidputAll(ByteBooleanMap map) Puts all of the key/value mappings from the specified map into this map.voidprivate voidrehash()private voidrehash(int newCapacity) private voidreject(ByteBooleanPredicate predicate) Return a copy of this map containing only the key/value pairs that do not match the predicate.voidremove(byte key) Removes the mapping associated with the key, if one exists, from the map.voidremoveKey(byte key) Removes the mapping associated with the key, if one exists, from the map.booleanremoveKeyIfAbsent(byte key, boolean value) Removes the mapping associated with the key, if one exists, from the map, returning the previously associated value with the key.select(ByteBooleanPredicate predicate) Return a copy of this map containing only the key/value pairs that match the predicate.protected voidprivate int(package private) intspreadAndMask(byte element) Returns a copy of this map that is immutable (if this map is mutable) or itself if it is already immutable.toString()Returns a string with the elements of this iterable separated by commas with spaces and enclosed in square brackets.booleanbooleanupdateValue(byte key, boolean initialValueIfAbsent, BooleanToBooleanFunction 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(ByteBooleanToBooleanFunction function) Updates the values in-place.values()Returns the values in this map as a separate collection.withKeysValues(byte key1, boolean value1, byte key2, boolean value2) withKeysValues(byte key1, boolean value1, byte key2, boolean value2, byte key3, boolean value3) withKeysValues(byte key1, boolean value1, byte key2, boolean value2, byte key3, boolean value3, byte key4, boolean value4) withKeyValue(byte key1, boolean value1) Associates a value with the specified key.withoutAllKeys(ByteIterable keys) Removes the mappings associated with all the keys, if they exist, from this map.withoutKey(byte key) Removes the mapping associated with the key, if one exists, from this map.voidMethods inherited from class AbstractMutableBooleanValuesMap
addEmptyKeyValue, addRemovedKeyValue, allSatisfy, anySatisfy, appendString, chunk, collect, contains, containsAll, count, detectIfNone, each, forEach, forEachValue, injectInto, isEmpty, noneSatisfy, notEmpty, reject, removeEmptyKey, removeRemovedKey, select, size, toArray, toArrayMethods inherited from class AbstractBooleanIterable
asLazy, toBag, toList, toSetMethods inherited from interface BooleanIterable
allSatisfy, anySatisfy, asLazy, chunk, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectInt, collectLong, collectShort, contains, containsAll, containsAll, containsAny, containsAny, containsNone, containsNone, count, detectIfNone, each, flatCollect, forEach, injectInto, injectIntoBoolean, injectIntoByte, injectIntoChar, injectIntoDouble, injectIntoFloat, injectIntoInt, injectIntoLong, injectIntoShort, noneSatisfy, reduce, reduceIfEmpty, reject, select, toArray, toArray, toBag, toList, toSetMethods inherited from interface BooleanValuesMap
forEachValue, tapMethods inherited from interface ByteBooleanMap
allSatisfyKeyValue, injectIntoKeyValueMethods inherited from interface ByteKeysMap
isEmpty, notEmpty, sizeMethods inherited from interface MutableBooleanValuesMap
collect, reject, selectMethods inherited from interface MutableByteBooleanMap
getAndPut, putPair, withAllKeyValuesMethods inherited from interface PrimitiveIterable
appendString, appendString, appendString, isEmpty, makeString, makeString, makeString, notEmpty, size
-
Field Details
-
EMPTY_VALUE
static final boolean EMPTY_VALUE- See Also:
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
EMPTY_KEY
private static final byte EMPTY_KEY- See Also:
-
REMOVED_KEY
private static final byte REMOVED_KEY- See Also:
-
DEFAULT_LOAD_FACTOR
-
OCCUPIED_DATA_RATIO
private static final int OCCUPIED_DATA_RATIO- See Also:
-
OCCUPIED_SENTINEL_RATIO
private static final int OCCUPIED_SENTINEL_RATIO- See Also:
-
DEFAULT_INITIAL_CAPACITY
private static final int DEFAULT_INITIAL_CAPACITY- See Also:
-
CACHE_LINE_SIZE
private static final int CACHE_LINE_SIZE- See Also:
-
KEY_SIZE
private static final int KEY_SIZE- See Also:
-
INITIAL_LINEAR_PROBE
private static final int INITIAL_LINEAR_PROBE- See Also:
-
keys
private byte[] keys -
values
-
occupiedWithData
private int occupiedWithData -
occupiedWithSentinels
private int occupiedWithSentinels -
sentinelValues
-
-
Constructor Details
-
ByteBooleanHashMap
public ByteBooleanHashMap() -
ByteBooleanHashMap
public ByteBooleanHashMap(int initialCapacity) -
ByteBooleanHashMap
-
ByteBooleanHashMap
Deprecated.in 5.1.0.
-
-
Method Details
-
getOccupiedWithData
protected int getOccupiedWithData()- Specified by:
getOccupiedWithDatain classAbstractMutableBooleanValuesMap
-
getSentinelValues
- Specified by:
getSentinelValuesin classAbstractMutableBooleanValuesMap
-
setSentinelValuesNull
protected void setSentinelValuesNull()- Specified by:
setSentinelValuesNullin classAbstractMutableBooleanValuesMap
-
getEmptyValue
protected boolean getEmptyValue()- Specified by:
getEmptyValuein classAbstractMutableBooleanValuesMap
-
getTableSize
protected int getTableSize()- Specified by:
getTableSizein classAbstractMutableBooleanValuesMap
-
getValueAtIndex
protected boolean getValueAtIndex(int index) - Specified by:
getValueAtIndexin classAbstractMutableBooleanValuesMap
-
isNonSentinelAtIndex
protected boolean isNonSentinelAtIndex(int index) - Specified by:
isNonSentinelAtIndexin classAbstractMutableBooleanValuesMap
-
smallestPowerOfTwoGreaterThan
private int smallestPowerOfTwoGreaterThan(int n) -
asUnmodifiable
Description copied from interface:MutableByteBooleanMapReturns 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 callingByteBooleanMap.toImmutable()while still providing immutability.- Specified by:
asUnmodifiablein interfaceMutableByteBooleanMap- Returns:
- an unmodifiable view of this map
-
asSynchronized
Description copied from interface:MutableByteBooleanMapReturns 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 interfaceMutableByteBooleanMap- Returns:
- a synchronized view of this map
-
toImmutable
Description copied from interface:ByteBooleanMapReturns a copy of this map that is immutable (if this map is mutable) or itself if it is already immutable.- Specified by:
toImmutablein interfaceByteBooleanMap- Returns:
- an immutable map that is equivalent to this one
-
newWithKeysValues
-
newWithKeysValues
public static ByteBooleanHashMap newWithKeysValues(byte key1, boolean value1, byte key2, boolean value2) -
newWithKeysValues
public static ByteBooleanHashMap newWithKeysValues(byte key1, boolean value1, byte key2, boolean value2, byte key3, boolean value3) -
newWithKeysValues
public static ByteBooleanHashMap newWithKeysValues(byte key1, boolean value1, byte key2, boolean value2, byte key3, boolean value3, byte key4, boolean value4) -
withKeyValue
Description copied from interface:MutableByteBooleanMapAssociates 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 interfaceMutableByteBooleanMap- Parameters:
key1- the keyvalue1- the value to associate withvalue- Returns:
- this map
- See Also:
-
withKeysValues
-
withKeysValues
public ByteBooleanHashMap withKeysValues(byte key1, boolean value1, byte key2, boolean value2, byte key3, boolean value3) -
withKeysValues
public ByteBooleanHashMap withKeysValues(byte key1, boolean value1, byte key2, boolean value2, byte key3, boolean value3, byte key4, boolean value4) -
withoutKey
Description copied from interface:MutableByteBooleanMapRemoves the mapping associated with the key, if one exists, from this map.- Specified by:
withoutKeyin interfaceMutableByteBooleanMap- Parameters:
key- the key to remove- Returns:
- this map
- See Also:
-
withoutAllKeys
Description copied from interface:MutableByteBooleanMapRemoves the mappings associated with all the keys, if they exist, from this map.- Specified by:
withoutAllKeysin interfaceMutableByteBooleanMap- Parameters:
keys- the keys to remove- Returns:
- this map
- See Also:
-
fastCeil
private int fastCeil(float v) -
isEmptyKey
private static boolean isEmptyKey(byte key) -
isRemovedKey
private static boolean isRemovedKey(byte key) -
isNonSentinel
private static boolean isNonSentinel(byte key) -
allocateTable
protected void allocateTable(int sizeToAllocate) -
trimToSize
public boolean trimToSize()- Since:
- 12.0
-
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. -
rehash
private void rehash() -
rehashAndGrow
private void rehashAndGrow() -
rehash
private void rehash(int newCapacity) -
probe
int probe(byte element) -
spreadAndMask
int spreadAndMask(byte element) -
mask
private int mask(int spread) -
clear
public void clear()Description copied from interface:MutableBooleanValuesMapRemoves all entries from this map.- Specified by:
clearin interfaceMutableBooleanValuesMap- Specified by:
clearin interfaceMutableByteKeysMap
-
put
public void put(byte key, boolean value) Description copied from interface:MutableByteBooleanMapAssociates 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 interfaceMutableByteBooleanMap- Parameters:
key- the keyvalue- the value to associate withvalue
-
putAll
Description copied from interface:MutableByteBooleanMapPuts 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 interfaceMutableByteBooleanMap- Parameters:
map- the map to copy into this map
-
updateValues
Description copied from interface:MutableByteBooleanMapUpdates the values in-place.- Specified by:
updateValuesin interfaceMutableByteBooleanMap- Parameters:
function- that takes a key and its value and that returns a new value for this key
-
containsKey
public boolean containsKey(byte key) Description copied from interface:ByteBooleanMapReturns whether or not the key is present in the map.- Specified by:
containsKeyin interfaceByteBooleanMap- Specified by:
containsKeyin interfaceByteKeysMap- Parameters:
key- the key- Returns:
- if a mapping exists in this map for the key
-
containsValue
public boolean containsValue(boolean value) Description copied from interface:BooleanValuesMapReturns whether or not this map contains the value.- Specified by:
containsValuein interfaceBooleanValuesMap- Parameters:
value- the value to test- Returns:
- if this collection contains the value
-
get
public boolean get(byte key) Description copied from interface:ByteBooleanMapRetrieves the value associated with the key. If no mapping exists for the key, the default value (usually0) is returned.- Specified by:
getin interfaceByteBooleanMap- Parameters:
key- the key- Returns:
- the value associated with the key, or the default value if no such mapping exists
-
getIfAbsent
public boolean getIfAbsent(byte key, boolean ifAbsent) Description copied from interface:ByteBooleanMapRetrieves the value associated with the key, returning the specified default value if no such mapping exists.- Specified by:
getIfAbsentin interfaceByteBooleanMap- 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.
-
getOrThrow
public boolean getOrThrow(byte key) Description copied from interface:ByteBooleanMapRetrieves the value associated with the key, throwing anIllegalStateExceptionif no such mapping exists.- Specified by:
getOrThrowin interfaceByteBooleanMap- Parameters:
key- the key- Returns:
- the value associated with the key
-
getIfAbsentPut
public boolean getIfAbsentPut(byte key, boolean value) Description copied from interface:MutableByteBooleanMapRetrieves the value associated with the key if one exists; if it does not, associates a value with the key.- Specified by:
getIfAbsentPutin interfaceMutableByteBooleanMap- 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
-
getIfAbsentPut
Description copied from interface:MutableByteBooleanMapRetrieves 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 interfaceMutableByteBooleanMap- 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
Description copied from interface:MutableByteBooleanMapRetrieves 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 interfaceMutableByteBooleanMap- 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
Description copied from interface:MutableByteBooleanMapRetrieves 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 interfaceMutableByteBooleanMap- 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
-
updateValue
public boolean updateValue(byte key, boolean initialValueIfAbsent, BooleanToBooleanFunction function) Description copied from interface:MutableByteBooleanMapUpdates 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 interfaceMutableByteBooleanMap- 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
-
addKeyValueAtIndex
private void addKeyValueAtIndex(byte key, boolean value, int index) -
removeKey
public void removeKey(byte key) Description copied from interface:MutableByteBooleanMapRemoves the mapping associated with the key, if one exists, from the map.- Specified by:
removeKeyin interfaceMutableByteBooleanMap- Specified by:
removeKeyin interfaceMutableByteKeysMap- Parameters:
key- the key to remove- See Also:
-
remove
public void remove(byte key) Description copied from interface:MutableByteBooleanMapRemoves the mapping associated with the key, if one exists, from the map.- Specified by:
removein interfaceMutableByteBooleanMap- Parameters:
key- the key to remove- See Also:
-
removeKeyIfAbsent
public boolean removeKeyIfAbsent(byte key, boolean value) Description copied from interface:MutableByteBooleanMapRemoves 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 interfaceMutableByteBooleanMap- 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
-
equals
Description copied from interface:ByteBooleanMapFollows the same general contract asMap.equals(Object).- Specified by:
equalsin interfaceByteBooleanMap- Overrides:
equalsin classObject
-
hashCode
public int hashCode()Description copied from interface:ByteBooleanMapFollows the same general contract asMap.hashCode().- Specified by:
hashCodein interfaceByteBooleanMap- Overrides:
hashCodein classObject
-
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 interfaceByteBooleanMap- Specified by:
toStringin interfacePrimitiveIterable- Overrides:
toStringin classAbstractBooleanIterable- Returns:
- a string representation of this PrimitiveIterable
- See Also:
-
booleanIterator
Description copied from interface:BooleanIterableReturns a primitive iterator that can be used to iterate over the BooleanIterable in an imperative style.- Specified by:
booleanIteratorin interfaceBooleanIterable- Specified by:
booleanIteratorin interfaceMutableBooleanValuesMap
-
forEachKey
Description copied from interface:ByteBooleanMapIterates through each key in the map, invoking the procedure for each.- Specified by:
forEachKeyin interfaceByteBooleanMap- Specified by:
forEachKeyin interfaceByteKeysMap- Parameters:
procedure- the procedure to invoke for each key
-
forEachKeyValue
Description copied from interface:ByteBooleanMapIterates through each key/value pair in the map, invoking the procedure for each.- Specified by:
forEachKeyValuein interfaceByteBooleanMap- Parameters:
procedure- the procedure to invoke for each key/value pair
-
select
Description copied from interface:ByteBooleanMapReturn a copy of this map containing only the key/value pairs that match the predicate.- Specified by:
selectin interfaceByteBooleanMap- Specified by:
selectin interfaceMutableByteBooleanMap- 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
Description copied from interface:ByteBooleanMapReturn a copy of this map containing only the key/value pairs that do not match the predicate.- Specified by:
rejectin interfaceByteBooleanMap- Specified by:
rejectin interfaceMutableByteBooleanMap- 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
-
keysView
Description copied from interface:ByteBooleanMapReturns 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 interfaceByteBooleanMap- Returns:
- a view of the keys in this map
-
keyValuesView
Description copied from interface:ByteBooleanMapReturns 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 interfaceByteBooleanMap- Returns:
- a view of the keys in this map
-
writeExternal
- Specified by:
writeExternalin interfaceExternalizable- Throws:
IOException
-
readExternal
- Specified by:
readExternalin interfaceExternalizable- Throws:
IOExceptionClassNotFoundException
-
maxOccupiedWithData
private int maxOccupiedWithData() -
maxOccupiedWithSentinels
private int maxOccupiedWithSentinels() -
keySet
Description copied from interface:ByteBooleanMapReturns 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 interfaceByteBooleanMap- Returns:
- a mutable set containing the keys in this map
-
values
Description copied from interface:BooleanValuesMapReturns 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 interfaceBooleanValuesMap- Returns:
- the values as a collection backed by this map
-