Modul speiger.src.collections
Klasse Byte2ObjectArrayMap<V>
java.lang.Object
java.util.AbstractMap<Byte,V>
speiger.src.collections.bytes.maps.abstracts.AbstractByte2ObjectMap<V>
speiger.src.collections.bytes.maps.impl.misc.Byte2ObjectArrayMap<V>
- Typparameter:
V- the keyType of elements maintained by this Collection
- Alle implementierten Schnittstellen:
Map<Byte,,V> ByteFunction<V>,Byte2ObjectMap<V>,Byte2ObjectOrderedMap<V>
public class Byte2ObjectArrayMap<V>
extends AbstractByte2ObjectMap<V>
implements Byte2ObjectOrderedMap<V>
A Very Specific Type Specific implementation of a ArrayMap.
This type of map is for very specific use cases that usaully would have lead to Tupled Lists otherwise.
It also does not allow duplication (except for array constructors) and checks from last to first.
It is not designed to be used as a HashMap replacement due to the poor performance it would cause.
- Note:
- in this implementation SubMaps do NOT keep track of parent changes fully. For performance reasons it will just have a start/end index and not values Anything within that range will be updated appropiatly a shrink/growth of elements will break SubMaps in some ways. This can be useful but be careful, this implementation does not shrink and only grows.
-
Verschachtelte Klassen - Übersicht
Von Klasse geerbte verschachtelte Klassen/Schnittstellen speiger.src.collections.bytes.maps.abstracts.AbstractByte2ObjectMap
AbstractByte2ObjectMap.BasicEntry<V>Von Klasse geerbte verschachtelte Klassen/Schnittstellen java.util.AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K, V> Von Schnittstelle geerbte verschachtelte Klassen/Schnittstellen speiger.src.collections.bytes.maps.interfaces.Byte2ObjectMap
Byte2ObjectMap.BuilderCache<V>, Byte2ObjectMap.Entry<V>, Byte2ObjectMap.FastEntrySet<V>, Byte2ObjectMap.MapBuilderVon Schnittstelle geerbte verschachtelte Klassen/Schnittstellen speiger.src.collections.bytes.maps.interfaces.Byte2ObjectOrderedMap
Byte2ObjectOrderedMap.FastOrderedSet<V> -
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungDefault ConstructorByte2ObjectArrayMap(byte[] keys, V[] values) Helper constructor that allow to create a map from unboxed valuesByte2ObjectArrayMap(byte[] keys, V[] values, int length) Helper constructor that allow to create a map from unboxed valuesByte2ObjectArrayMap(int minCapacity) Constructor that defines the minimum capacityByte2ObjectArrayMap(Byte[] keys, V[] values) Helper constructor that allow to create a map from boxed values (it will unbox them)Byte2ObjectArrayMap(Byte[] keys, V[] values, int length) Helper constructor that allow to create a map from boxed values (it will unbox them) with a custom lengthByte2ObjectArrayMap(Map<? extends Byte, ? extends V> map) A Helper constructor that allows to create a Map with exactly the same values as the provided map.A Type Specific Helper function that allows to create a new Map with exactly the same values as the provided map. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungType Sensitive EntrySet to reduce boxing/unboxing and optionally Temp Object Allocation.voidclear()compute(byte key, ByteObjectUnaryOperator<V> mappingFunction) A Type Specific compute method to reduce boxing/unboxing If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null".computeIfAbsent(byte key, ByteFunction<V> mappingFunction) A Type Specific computeIfAbsent method to reduce boxing/unboxing If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null".computeIfPresent(byte key, ByteObjectUnaryOperator<V> mappingFunction) A Type Specific compute method to reduce boxing/unboxing If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null".booleancontainsKey(byte key) Type Specific method to reduce boxing/unboxing of valuesbooleancontainsKey(Object key) booleancontainsValue(Object value) copy()A Function that does a shallow clone of the Map itself.byteA method to get the first Key of a Map.A method to get the first Value of a Map.voidforEach(ByteObjectConsumer<V> action) Type Specific forEach method to reduce boxing/unboxingget(byte key) A Type Specific get method to reduce boxing/unboxinggetAndMoveToFirst(byte key) A Specific get method that allows to move teh given key/value int the first index.getAndMoveToLast(byte key) A Specific get method that allows to move teh given key/value int the last index.getOrDefault(byte key, V defaultValue) A Type Specific getOrDefault method to reduce boxing/unboxingkeySet()byteA method to get the last Key of a Map.A method to get the last Value of a Map.merge(byte key, V value, ObjectObjectUnaryOperator<V, V> mappingFunction) A Type Specific merge method to reduce boxing/unboxing If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null".voidmergeAll(Byte2ObjectMap<V> m, ObjectObjectUnaryOperator<V, V> mappingFunction) A Bulk method for merging Maps.booleanmoveToFirst(byte key) A specific move method to move a given key/value to the first index.booleanmoveToLast(byte key) A specific move method to move a given key/value to the last index.byteA method to get and remove the first Key of a Map.byteA method to get and remove the last Key of a Map.Type Specific method to reduce boxing/unboxing of valuesputAndMoveToFirst(byte key, V value) A customized put method that allows you to insert into the first index.putAndMoveToLast(byte key, V value) A customized put method that allows you to insert into the last index.putIfAbsent(byte key, V value) Type Specific method to reduce boxing/unboxing of valuesremove(byte key) Type Specific remove function to reduce boxing/unboxingbooleanType Specific remove function to reduce boxing/unboxingbooleanremoveOrDefault(byte key, V defaultValue) Type-Specific Remove function with a default return value if wanted.A Type Specific replace method to reduce boxing/unboxing replace an existing valuebooleanA Type Specific replace method to replace an existing valueintsize()supplyIfAbsent(byte key, ObjectSupplier<V> valueProvider) A Supplier based computeIfAbsent function to fill the most used usecase of this function If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null".values()Von Klasse geerbte Methoden speiger.src.collections.bytes.maps.abstracts.AbstractByte2ObjectMap
entrySet, equals, get, getDefaultReturnValue, getOrDefault, hashCode, put, putAll, putAll, putAll, putAll, putAllIfAbsent, replaceObjects, replaceObjects, setDefaultReturnValueVon Klasse geerbte Methoden java.util.AbstractMap
isEmpty, toStringVon Schnittstelle geerbte Methoden speiger.src.collections.bytes.maps.interfaces.Byte2ObjectMap
apply, compute, computeIfAbsent, computeIfPresent, entrySet, forEach, get, getDefaultReturnValue, getOrDefault, merge, put, put, put, putAll, putAll, putAll, putAll, putAll, putAllIfAbsent, putIfAbsent, replace, replace, replaceAll, replaceObjects, replaceObjects, setDefaultReturnValueVon Schnittstelle geerbte Methoden speiger.src.collections.bytes.maps.interfaces.Byte2ObjectOrderedMap
synchronize, synchronize, unmodifiable
-
Konstruktordetails
-
Byte2ObjectArrayMap
public Byte2ObjectArrayMap()Default Constructor -
Byte2ObjectArrayMap
public Byte2ObjectArrayMap(int minCapacity) Constructor that defines the minimum capacity- Parameter:
minCapacity- the minimum capacity the HashMap is allowed to be.- Löst aus:
IllegalStateException- if the minimum capacity is negative
-
Byte2ObjectArrayMap
Helper constructor that allow to create a map from boxed values (it will unbox them)- Parameter:
keys- the keys that should be put into the mapvalues- the values that should be put into the map.- Löst aus:
IllegalStateException- if the keys and values do not match in length
-
Byte2ObjectArrayMap
Helper constructor that allow to create a map from boxed values (it will unbox them) with a custom length- Parameter:
keys- the keys that should be put into the mapvalues- the values that should be put into the map.length- the amount of values that should be pulled from the array- Löst aus:
IllegalStateException- if the keys and values do not match in length
-
Byte2ObjectArrayMap
Helper constructor that allow to create a map from unboxed values- Parameter:
keys- the keys that should be put into the mapvalues- the values that should be put into the map.- Löst aus:
IllegalStateException- if the keys and values do not match in lenght
-
Byte2ObjectArrayMap
Helper constructor that allow to create a map from unboxed values- Parameter:
keys- the keys that should be put into the mapvalues- the values that should be put into the map.length- the amount of values that should be pulled from the array- Löst aus:
IllegalStateException- if the keys and values do not match in lenght
-
Byte2ObjectArrayMap
A Helper constructor that allows to create a Map with exactly the same values as the provided map.- Parameter:
map- the values that should be present in the map
-
Byte2ObjectArrayMap
A Type Specific Helper function that allows to create a new Map with exactly the same values as the provided map.- Parameter:
map- the values that should be present in the map
-
-
Methodendetails
-
put
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapType Specific method to reduce boxing/unboxing of values- Angegeben von:
putin SchnittstelleByte2ObjectMap<V>- Parameter:
key- the key that should be inserted,value- the value that should be inserted- Gibt zurück:
- the last present value or default return value.
- Siehe auch:
-
putIfAbsent
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapType Specific method to reduce boxing/unboxing of values- Angegeben von:
putIfAbsentin SchnittstelleByte2ObjectMap<V>- Parameter:
key- the key that should be inserted,value- the value that should be inserted- Gibt zurück:
- the last present value or default return value.
- Siehe auch:
-
putAndMoveToFirst
Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA customized put method that allows you to insert into the first index.- Angegeben von:
putAndMoveToFirstin SchnittstelleByte2ObjectOrderedMap<V>- Parameter:
key- the key that should be insertedvalue- the value that should be inserted- Gibt zurück:
- the previous present or default return value
- Siehe auch:
-
putAndMoveToLast
Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA customized put method that allows you to insert into the last index. (This may be nessesary depending on the implementation)- Angegeben von:
putAndMoveToLastin SchnittstelleByte2ObjectOrderedMap<V>- Parameter:
key- the key that should be insertedvalue- the value that should be inserted- Gibt zurück:
- the previous present or default return value
- Siehe auch:
-
moveToFirst
public boolean moveToFirst(byte key) Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA specific move method to move a given key/value to the first index.- Angegeben von:
moveToFirstin SchnittstelleByte2ObjectOrderedMap<V>- Parameter:
key- that should be moved to the first index- Gibt zurück:
- true if the value was moved.
-
moveToLast
public boolean moveToLast(byte key) Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA specific move method to move a given key/value to the last index.- Angegeben von:
moveToLastin SchnittstelleByte2ObjectOrderedMap<V>- Parameter:
key- that should be moved to the first last- Gibt zurück:
- true if the value was moved.
-
containsKey
public boolean containsKey(byte key) Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapType Specific method to reduce boxing/unboxing of values- Angegeben von:
containsKeyin SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
containsKeyin KlasseAbstractByte2ObjectMap<V>- Parameter:
key- element that is searched for- Gibt zurück:
- if the key is present
-
containsKey
- Angegeben von:
containsKeyin SchnittstelleByte2ObjectMap<V>- Angegeben von:
containsKeyin SchnittstelleMap<Byte,V> - Setzt außer Kraft:
containsKeyin KlasseAbstractMap<Byte,V> - Parameter:
key- that is searched for.- Gibt zurück:
- true if found
- Siehe auch:
-
containsValue
- Angegeben von:
containsValuein SchnittstelleMap<Byte,V> - Setzt außer Kraft:
containsValuein KlasseAbstractByte2ObjectMap<V>
-
get
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Type Specific get method to reduce boxing/unboxing- Angegeben von:
getin SchnittstelleByte2ObjectMap<V>- Parameter:
key- the key that is searched for- Gibt zurück:
- the searched value or default return value
-
getOrDefault
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Type Specific getOrDefault method to reduce boxing/unboxing- Angegeben von:
getOrDefaultin SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
getOrDefaultin KlasseAbstractByte2ObjectMap<V>- Parameter:
key- the key that is searched fordefaultValue- the value that should be returned if the key is not present- Gibt zurück:
- the searched value or defaultValue value
-
getAndMoveToFirst
Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA Specific get method that allows to move teh given key/value int the first index.- Angegeben von:
getAndMoveToFirstin SchnittstelleByte2ObjectOrderedMap<V>- Parameter:
key- that is searched for- Gibt zurück:
- the given value for the requested key or default return value
-
getAndMoveToLast
Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA Specific get method that allows to move teh given key/value int the last index.- Angegeben von:
getAndMoveToLastin SchnittstelleByte2ObjectOrderedMap<V>- Parameter:
key- that is searched for- Gibt zurück:
- the given value for the requested key or default return value
-
firstByteKey
public byte firstByteKey()Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA method to get the first Key of a Map.- Angegeben von:
firstByteKeyin SchnittstelleByte2ObjectOrderedMap<V>- Gibt zurück:
- the first key in the map
-
lastByteKey
public byte lastByteKey()Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA method to get the last Key of a Map.- Angegeben von:
lastByteKeyin SchnittstelleByte2ObjectOrderedMap<V>- Gibt zurück:
- the last key in the map
-
firstValue
Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA method to get the first Value of a Map.- Angegeben von:
firstValuein SchnittstelleByte2ObjectOrderedMap<V>- Gibt zurück:
- the first key in the map
-
lastValue
Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA method to get the last Value of a Map.- Angegeben von:
lastValuein SchnittstelleByte2ObjectOrderedMap<V>- Gibt zurück:
- the last key in the map
-
pollFirstByteKey
public byte pollFirstByteKey()Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA method to get and remove the first Key of a Map.- Angegeben von:
pollFirstByteKeyin SchnittstelleByte2ObjectOrderedMap<V>- Gibt zurück:
- the first key in the map
-
pollLastByteKey
public byte pollLastByteKey()Beschreibung aus Schnittstelle kopiert:Byte2ObjectOrderedMapA method to get and remove the last Key of a Map.- Angegeben von:
pollLastByteKeyin SchnittstelleByte2ObjectOrderedMap<V>- Gibt zurück:
- the last key in the map
-
remove
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapType Specific remove function to reduce boxing/unboxing- Angegeben von:
removein SchnittstelleByte2ObjectMap<V>- Parameter:
key- the element that should be removed- Gibt zurück:
- the value that was removed or default return value
-
removeOrDefault
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapType-Specific Remove function with a default return value if wanted.- Angegeben von:
removeOrDefaultin SchnittstelleByte2ObjectMap<V>- Parameter:
key- the element that should be removeddefaultValue- the value that should be returned if the entry doesn't exist- Gibt zurück:
- the value that was removed or default value
- Siehe auch:
-
remove
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapType Specific remove function to reduce boxing/unboxing- Angegeben von:
removein SchnittstelleByte2ObjectMap<V>- Parameter:
key- the element that should be removedvalue- the expected value that should be found- Gibt zurück:
- true if the key and value was found and removed
- Siehe auch:
-
remove
- Angegeben von:
removein SchnittstelleByte2ObjectMap<V>- Angegeben von:
removein SchnittstelleMap<Byte,V> - Setzt außer Kraft:
removein KlasseAbstractByte2ObjectMap<V>- Parameter:
key- the element that should be removed- Gibt zurück:
- the value that was removed or default return value
- Siehe auch:
-
remove
-
forEach
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapType Specific forEach method to reduce boxing/unboxing- Angegeben von:
forEachin SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
forEachin KlasseAbstractByte2ObjectMap<V>- Parameter:
action- processor of the values that are iterator over
-
keySet
- Angegeben von:
keySetin SchnittstelleByte2ObjectMap<V>- Angegeben von:
keySetin SchnittstelleByte2ObjectOrderedMap<V>- Angegeben von:
keySetin SchnittstelleMap<Byte,V> - Setzt außer Kraft:
keySetin KlasseAbstractByte2ObjectMap<V>
-
values
- Angegeben von:
valuesin SchnittstelleByte2ObjectMap<V>- Angegeben von:
valuesin SchnittstelleMap<Byte,V> - Setzt außer Kraft:
valuesin KlasseAbstractByte2ObjectMap<V>
-
byte2ObjectEntrySet
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapType Sensitive EntrySet to reduce boxing/unboxing and optionally Temp Object Allocation.- Angegeben von:
byte2ObjectEntrySetin SchnittstelleByte2ObjectMap<V>- Angegeben von:
byte2ObjectEntrySetin SchnittstelleByte2ObjectOrderedMap<V>- Gibt zurück:
- a EntrySet of the collection
-
replace
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Type Specific replace method to replace an existing value- Angegeben von:
replacein SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
replacein KlasseAbstractByte2ObjectMap<V>- Parameter:
key- the element that should be searched foroldValue- the expected value to be replacednewValue- the value to replace the oldValue with.- Gibt zurück:
- true if the value got replaced
-
replace
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Type Specific replace method to reduce boxing/unboxing replace an existing value- Angegeben von:
replacein SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
replacein KlasseAbstractByte2ObjectMap<V>- Parameter:
key- the element that should be searched forvalue- the value to replace with.- Gibt zurück:
- the present value or default return value
-
compute
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Type Specific compute method to reduce boxing/unboxing If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null". A "Null Value" will be treated as "Do not insert/remove" based on how the Java has specified it.- Angegeben von:
computein SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
computein KlasseAbstractByte2ObjectMap<V>- Parameter:
key- the key that should be computedmappingFunction- the operator that should generate the value- Gibt zurück:
- the result of the computation
-
computeIfAbsent
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Type Specific computeIfAbsent method to reduce boxing/unboxing If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null". A "Null Value" will be treated as "Do not insert/remove" based on how the Java has specified it.- Angegeben von:
computeIfAbsentin SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
computeIfAbsentin KlasseAbstractByte2ObjectMap<V>- Parameter:
key- the key that should be computedmappingFunction- the operator that should generate the value if not present- Gibt zurück:
- the result of the computed value or present value
-
supplyIfAbsent
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Supplier based computeIfAbsent function to fill the most used usecase of this function If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null". A "Null Value" will be treated as "Do not insert/remove" based on how the Java has specified it.- Angegeben von:
supplyIfAbsentin SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
supplyIfAbsentin KlasseAbstractByte2ObjectMap<V>- Parameter:
key- the key that should be computedvalueProvider- the value if not present- Gibt zurück:
- the result of the computed value or present value
-
computeIfPresent
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Type Specific compute method to reduce boxing/unboxing If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null". A "Null Value" will be treated as "Do not insert/remove" based on how the Java has specified it.- Angegeben von:
computeIfPresentin SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
computeIfPresentin KlasseAbstractByte2ObjectMap<V>- Parameter:
key- the key that should be computedmappingFunction- the operator that should generate the value if present- Gibt zurück:
- the result of the default return value or present value
-
merge
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Type Specific merge method to reduce boxing/unboxing If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null". A "Null Value" will be treated as "Do not insert/remove" based on how the Java has specified it.- Angegeben von:
mergein SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
mergein KlasseAbstractByte2ObjectMap<V>- Parameter:
key- the key that should be be searched forvalue- the value that should be merged withmappingFunction- the operator that should generate the new Value- Gibt zurück:
- the result of the merge
-
mergeAll
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Bulk method for merging Maps. If the generated value equals the getDefaultReturnValue it will simply not insert it since that is treated as "null". A "Null Value" will be treated as "Do not insert/remove" based on how the Java has specified it.- Angegeben von:
mergeAllin SchnittstelleByte2ObjectMap<V>- Setzt außer Kraft:
mergeAllin KlasseAbstractByte2ObjectMap<V>- Parameter:
m- the entries that should be bulk addedmappingFunction- the operator that should generate the new Value
-
size
public int size() -
clear
public void clear() -
copy
Beschreibung aus Schnittstelle kopiert:Byte2ObjectMapA Function that does a shallow clone of the Map itself. This function is more optimized then a copy constructor since the Map does not have to be unsorted/resorted. It can be compared to Cloneable but with less exception risk- Angegeben von:
copyin SchnittstelleByte2ObjectMap<V>- Angegeben von:
copyin SchnittstelleByte2ObjectOrderedMap<V>- Setzt außer Kraft:
copyin KlasseAbstractByte2ObjectMap<V>- Gibt zurück:
- a Shallow Copy of the Map
-