Modul speiger.src.collections
Klasse Char2ObjectOpenCustomHashMap<V>
java.lang.Object
java.util.AbstractMap<Character,V>
speiger.src.collections.chars.maps.abstracts.AbstractChar2ObjectMap<V>
speiger.src.collections.chars.maps.impl.customHash.Char2ObjectOpenCustomHashMap<V>
- Typparameter:
V- the keyType of elements maintained by this Collection
- Alle implementierten Schnittstellen:
Map<Character,,V> CharFunction<V>,Char2ObjectMap<V>,ITrimmable
- Bekannte direkte Unterklassen:
Char2ObjectLinkedOpenCustomHashMap
public class Char2ObjectOpenCustomHashMap<V>
extends AbstractChar2ObjectMap<V>
implements ITrimmable
A Type Specific HashMap that allows for custom HashControl.
For cases where Objects/primitive do not allow hashcoding this can be really useful and provide a lot of control.
-
Verschachtelte Klassen - Übersicht
Von Klasse geerbte verschachtelte Klassen/Schnittstellen speiger.src.collections.chars.maps.abstracts.AbstractChar2ObjectMap
AbstractChar2ObjectMap.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.chars.maps.interfaces.Char2ObjectMap
Char2ObjectMap.BuilderCache<V>, Char2ObjectMap.Entry<V>, Char2ObjectMap.FastEntrySet<V>, Char2ObjectMap.MapBuilder -
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungChar2ObjectOpenCustomHashMap(char[] keys, V[] values, float loadFactor, CharStrategy strategy) Helper constructor that allow to create a map from unboxed valuesChar2ObjectOpenCustomHashMap(char[] keys, V[] values, CharStrategy strategy) Helper constructor that allow to create a map from unboxed valuesChar2ObjectOpenCustomHashMap(int minCapacity, float loadFactor, CharStrategy strategy) Constructor that defines the minimum capacity and load factorChar2ObjectOpenCustomHashMap(int minCapacity, CharStrategy strategy) Constructor that defines the minimum capacityChar2ObjectOpenCustomHashMap(Character[] keys, V[] values, float loadFactor, CharStrategy strategy) Helper constructor that allow to create a map from boxed values (it will unbox them)Char2ObjectOpenCustomHashMap(Character[] keys, V[] values, CharStrategy strategy) Helper constructor that allow to create a map from boxed values (it will unbox them)Char2ObjectOpenCustomHashMap(Map<? extends Character, ? extends V> map, float loadFactor, CharStrategy strategy) A Helper constructor that allows to create a Map with exactly the same values as the provided map.Char2ObjectOpenCustomHashMap(Map<? extends Character, ? extends V> map, CharStrategy strategy) A Helper constructor that allows to create a Map with exactly the same values as the provided map.Char2ObjectOpenCustomHashMap(Char2ObjectMap<V> map, float loadFactor, CharStrategy strategy) A Type Specific Helper function that allows to create a new Map with exactly the same values as the provided map.Char2ObjectOpenCustomHashMap(Char2ObjectMap<V> map, CharStrategy strategy) A Type Specific Helper function that allows to create a new Map with exactly the same values as the provided map.Char2ObjectOpenCustomHashMap(CharStrategy strategy) Default Contstructor -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungType Sensitive EntrySet to reduce boxing/unboxing and optionally Temp Object Allocation.voidclear()voidclearAndTrim(int size) Trims the collection down to the requested size and clears all elements while doing socompute(char key, CharObjectUnaryOperator<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(char key, CharFunction<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(char key, CharObjectUnaryOperator<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(char key) Type Specific method to reduce boxing/unboxing of valuesbooleancontainsKey(Object key) Veraltet.booleancontainsValue(Object value) copy()A Function that does a shallow clone of the Map itself.voidforEach(CharObjectConsumer<V> action) Type Specific forEach method to reduce boxing/unboxingget(char key) A Type Specific get method to reduce boxing/unboxinggetOrDefault(char key, V defaultValue) A Type Specific getOrDefault method to reduce boxing/unboxingkeySet()merge(char 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(Char2ObjectMap<V> m, ObjectObjectUnaryOperator<V, V> mappingFunction) A Bulk method for merging Maps.Type Specific method to reduce boxing/unboxing of valuesputIfAbsent(char key, V value) Type Specific method to reduce boxing/unboxing of valuesremove(char key) Type Specific remove function to reduce boxing/unboxingbooleanType Specific remove function to reduce boxing/unboxingbooleanremoveOrDefault(char 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(char 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".booleantrim(int size) Trims the original collection down to the size of the current elements or the requested size depending which is biggervalues()Von Klasse geerbte Methoden speiger.src.collections.chars.maps.abstracts.AbstractChar2ObjectMap
entrySet, equals, 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.chars.maps.interfaces.Char2ObjectMap
apply, compute, computeIfAbsent, computeIfPresent, forEach, merge, put, put, putAll, putAll, putIfAbsent, replace, replace, replaceAll, synchronize, synchronize, unmodifiableVon Schnittstelle geerbte Methoden speiger.src.collections.utils.ITrimmable
clearAndTrim, trim
-
Konstruktordetails
-
Char2ObjectOpenCustomHashMap
Default Contstructor- Parameter:
strategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is null
-
Char2ObjectOpenCustomHashMap
Constructor that defines the minimum capacity- Parameter:
minCapacity- the minimum capacity the HashMap is allowed to be.strategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is nullIllegalStateException- if the minimum capacity is negative
-
Char2ObjectOpenCustomHashMap
Constructor that defines the minimum capacity and load factor- Parameter:
minCapacity- the minimum capacity the HashMap is allowed to be.loadFactor- the percentage of how full the backing array can be before they resizestrategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is nullIllegalStateException- if the minimum capacity is negativeIllegalStateException- if the loadfactor is either below/equal to 0 or above/equal to 1
-
Char2ObjectOpenCustomHashMap
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.strategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is nullIllegalStateException- if the keys and values do not match in lenght
-
Char2ObjectOpenCustomHashMap
public Char2ObjectOpenCustomHashMap(Character[] keys, V[] values, float loadFactor, CharStrategy strategy) 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.loadFactor- the percentage of how full the backing array can be before they resizestrategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is nullIllegalStateException- if the keys and values do not match in lenghtIllegalStateException- if the loadfactor is either below/equal to 0 or above/equal to 1
-
Char2ObjectOpenCustomHashMap
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.strategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is nullIllegalStateException- if the keys and values do not match in lenght
-
Char2ObjectOpenCustomHashMap
public Char2ObjectOpenCustomHashMap(char[] keys, V[] values, float loadFactor, CharStrategy strategy) 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.loadFactor- the percentage of how full the backing array can be before they resizestrategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is nullIllegalStateException- if the keys and values do not match in lenghtIllegalStateException- if the loadfactor is either below/equal to 0 or above/equal to 1
-
Char2ObjectOpenCustomHashMap
public Char2ObjectOpenCustomHashMap(Map<? extends Character, ? extends V> map, CharStrategy strategy) 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 mapstrategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is null
-
Char2ObjectOpenCustomHashMap
public Char2ObjectOpenCustomHashMap(Map<? extends Character, ? extends V> map, float loadFactor, CharStrategy strategy) 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 maploadFactor- the percentage of how full the backing array can be before they resizestrategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is nullIllegalStateException- if the loadfactor is either below/equal to 0 or above/equal to 1
-
Char2ObjectOpenCustomHashMap
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 mapstrategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is null
-
Char2ObjectOpenCustomHashMap
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 maploadFactor- the percentage of how full the backing array can be before they resizestrategy- the strategy that allows hash control.- Löst aus:
NullPointerException- if Strategy is nullIllegalStateException- if the loadfactor is either below/equal to 0 or above/equal to 1
-
-
Methodendetails
-
put
Beschreibung aus Schnittstelle kopiert:Char2ObjectMapType Specific method to reduce boxing/unboxing of values- Angegeben von:
putin SchnittstelleChar2ObjectMap<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:Char2ObjectMapType Specific method to reduce boxing/unboxing of values- Angegeben von:
putIfAbsentin SchnittstelleChar2ObjectMap<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:
-
containsKey
public boolean containsKey(char key) Beschreibung aus Schnittstelle kopiert:Char2ObjectMapType Specific method to reduce boxing/unboxing of values- Angegeben von:
containsKeyin SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
containsKeyin KlasseAbstractChar2ObjectMap<V>- Parameter:
key- element that is searched for- Gibt zurück:
- if the key is present
-
containsKey
Veraltet.- Angegeben von:
containsKeyin SchnittstelleChar2ObjectMap<V>- Angegeben von:
containsKeyin SchnittstelleMap<Character,V> - Setzt außer Kraft:
containsKeyin KlasseAbstractMap<Character,V> - Parameter:
key- that is searched for.- Gibt zurück:
- true if found
- Siehe auch:
-
containsValue
- Angegeben von:
containsValuein SchnittstelleMap<Character,V> - Setzt außer Kraft:
containsValuein KlasseAbstractChar2ObjectMap<V>
-
remove
Beschreibung aus Schnittstelle kopiert:Char2ObjectMapType Specific remove function to reduce boxing/unboxing- Angegeben von:
removein SchnittstelleChar2ObjectMap<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:Char2ObjectMapType-Specific Remove function with a default return value if wanted.- Angegeben von:
removeOrDefaultin SchnittstelleChar2ObjectMap<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
- Angegeben von:
removein SchnittstelleChar2ObjectMap<V>- Angegeben von:
removein SchnittstelleMap<Character,V> - Setzt außer Kraft:
removein KlasseAbstractChar2ObjectMap<V>- Parameter:
key- the element that should be removed- Gibt zurück:
- the value that was removed or default return value
- Siehe auch:
-
remove
Beschreibung aus Schnittstelle kopiert:Char2ObjectMapType Specific remove function to reduce boxing/unboxing- Angegeben von:
removein SchnittstelleChar2ObjectMap<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
-
get
Beschreibung aus Schnittstelle kopiert:Char2ObjectMapA Type Specific get method to reduce boxing/unboxing- Angegeben von:
getin SchnittstelleChar2ObjectMap<V>- Parameter:
key- the key that is searched for- Gibt zurück:
- the searched value or default return value
-
get
- Angegeben von:
getin SchnittstelleChar2ObjectMap<V>- Angegeben von:
getin SchnittstelleMap<Character,V> - Setzt außer Kraft:
getin KlasseAbstractChar2ObjectMap<V>
-
getOrDefault
Beschreibung aus Schnittstelle kopiert:Char2ObjectMapA Type Specific getOrDefault method to reduce boxing/unboxing- Angegeben von:
getOrDefaultin SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
getOrDefaultin KlasseAbstractChar2ObjectMap<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
-
copy
Beschreibung aus Schnittstelle kopiert:Char2ObjectMapA 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 SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
copyin KlasseAbstractChar2ObjectMap<V>- Gibt zurück:
- a Shallow Copy of the Map
-
char2ObjectEntrySet
Beschreibung aus Schnittstelle kopiert:Char2ObjectMapType Sensitive EntrySet to reduce boxing/unboxing and optionally Temp Object Allocation.- Angegeben von:
char2ObjectEntrySetin SchnittstelleChar2ObjectMap<V>- Gibt zurück:
- a EntrySet of the collection
-
keySet
- Angegeben von:
keySetin SchnittstelleChar2ObjectMap<V>- Angegeben von:
keySetin SchnittstelleMap<Character,V> - Setzt außer Kraft:
keySetin KlasseAbstractChar2ObjectMap<V>
-
values
- Angegeben von:
valuesin SchnittstelleChar2ObjectMap<V>- Angegeben von:
valuesin SchnittstelleMap<Character,V> - Setzt außer Kraft:
valuesin KlasseAbstractChar2ObjectMap<V>
-
forEach
Beschreibung aus Schnittstelle kopiert:Char2ObjectMapType Specific forEach method to reduce boxing/unboxing- Angegeben von:
forEachin SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
forEachin KlasseAbstractChar2ObjectMap<V>- Parameter:
action- processor of the values that are iterator over
-
replace
Beschreibung aus Schnittstelle kopiert:Char2ObjectMapA Type Specific replace method to replace an existing value- Angegeben von:
replacein SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
replacein KlasseAbstractChar2ObjectMap<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:Char2ObjectMapA Type Specific replace method to reduce boxing/unboxing replace an existing value- Angegeben von:
replacein SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
replacein KlasseAbstractChar2ObjectMap<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:Char2ObjectMapA 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 SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
computein KlasseAbstractChar2ObjectMap<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:Char2ObjectMapA 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 SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
computeIfAbsentin KlasseAbstractChar2ObjectMap<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:Char2ObjectMapA 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 SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
supplyIfAbsentin KlasseAbstractChar2ObjectMap<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:Char2ObjectMapA 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 SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
computeIfPresentin KlasseAbstractChar2ObjectMap<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:Char2ObjectMapA 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 SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
mergein KlasseAbstractChar2ObjectMap<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:Char2ObjectMapA 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 SchnittstelleChar2ObjectMap<V>- Setzt außer Kraft:
mergeAllin KlasseAbstractChar2ObjectMap<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() -
trim
public boolean trim(int size) Beschreibung aus Schnittstelle kopiert:ITrimmableTrims the original collection down to the size of the current elements or the requested size depending which is bigger- Angegeben von:
trimin SchnittstelleITrimmable- Parameter:
size- the requested trim size.- Gibt zurück:
- if the internal array has been trimmed.
-
clearAndTrim
public void clearAndTrim(int size) Beschreibung aus Schnittstelle kopiert:ITrimmableTrims the collection down to the requested size and clears all elements while doing so- Angegeben von:
clearAndTrimin SchnittstelleITrimmable- Parameter:
size- the amount of elements that should be allowed
-