T - the type of elements maintained by this Collectionpublic class Object2LongOpenCustomHashMap<T> extends AbstractObject2LongMap<T> implements ITrimmable
AbstractObject2LongMap.BasicEntry<T>java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V>Object2LongMap.BuilderCache<T>, Object2LongMap.Entry<T>, Object2LongMap.FastEntrySet<T>, Object2LongMap.MapBuilder| Constructor and Description |
|---|
Object2LongOpenCustomHashMap(int minCapacity,
float loadFactor,
ObjectStrategy<? super T> strategy)
Constructor that defines the minimum capacity and load factor
|
Object2LongOpenCustomHashMap(int minCapacity,
ObjectStrategy<? super T> strategy)
Constructor that defines the minimum capacity
|
Object2LongOpenCustomHashMap(java.util.Map<? extends T,? extends java.lang.Long> map,
float loadFactor,
ObjectStrategy<? super T> strategy)
A Helper constructor that allows to create a Map with exactly the same values as the provided map.
|
Object2LongOpenCustomHashMap(java.util.Map<? extends T,? extends java.lang.Long> map,
ObjectStrategy<? super T> strategy)
A Helper constructor that allows to create a Map with exactly the same values as the provided map.
|
Object2LongOpenCustomHashMap(Object2LongMap<T> map,
float loadFactor,
ObjectStrategy<? super T> strategy)
A Type Specific Helper function that allows to create a new Map with exactly the same values as the provided map.
|
Object2LongOpenCustomHashMap(Object2LongMap<T> map,
ObjectStrategy<? super T> strategy)
A Type Specific Helper function that allows to create a new Map with exactly the same values as the provided map.
|
Object2LongOpenCustomHashMap(ObjectStrategy<? super T> strategy)
Default Contstructor
|
Object2LongOpenCustomHashMap(T[] keys,
long[] values,
float loadFactor,
ObjectStrategy<? super T> strategy)
Helper constructor that allow to create a map from unboxed values
|
Object2LongOpenCustomHashMap(T[] keys,
java.lang.Long[] values,
float loadFactor,
ObjectStrategy<? super T> strategy)
Helper constructor that allow to create a map from boxed values (it will unbox them)
|
Object2LongOpenCustomHashMap(T[] keys,
long[] values,
ObjectStrategy<? super T> strategy)
Helper constructor that allow to create a map from unboxed values
|
Object2LongOpenCustomHashMap(T[] keys,
java.lang.Long[] values,
ObjectStrategy<? super T> strategy)
Helper constructor that allow to create a map from boxed values (it will unbox them)
|
| Modifier and Type | Method and Description |
|---|---|
long |
addTo(T key,
long value)
A Helper method to add a primitives together.
|
void |
clear() |
void |
clearAndTrim(int size)
Trims the collection down to the requested size and clears all elements while doing so
|
long |
computeLong(T key,
ObjectLongUnaryOperator<T> mappingFunction)
A Type Specific compute method to reduce boxing/unboxing
|
long |
computeLongIfAbsent(T key,
Object2LongFunction<T> mappingFunction)
A Type Specific compute method to reduce boxing/unboxing
|
long |
computeLongIfPresent(T key,
ObjectLongUnaryOperator<T> mappingFunction)
A Type Specific compute method to reduce boxing/unboxing
|
boolean |
containsKey(java.lang.Object key) |
boolean |
containsValue(long value)
Type Specific method to reduce boxing/unboxing of values
|
boolean |
containsValue(java.lang.Object value)
Deprecated.
|
Object2LongOpenCustomHashMap<T> |
copy()
A Function that does a shallow clone of the Map itself.
|
void |
forEach(ObjectLongConsumer<T> action)
Type Specific forEach method to reduce boxing/unboxing
|
java.lang.Long |
get(java.lang.Object key) |
long |
getLong(T key)
A Type Specific get method to reduce boxing/unboxing
|
long |
getOrDefault(T key,
long defaultValue)
A Type Specific getOrDefault method to reduce boxing/unboxing
|
ObjectSet<T> |
keySet() |
void |
mergeAllLong(Object2LongMap<T> m,
LongLongUnaryOperator mappingFunction)
A Bulk method for merging Maps.
|
long |
mergeLong(T key,
long value,
LongLongUnaryOperator mappingFunction)
A Type Specific merge method to reduce boxing/unboxing
|
ObjectSet<Object2LongMap.Entry<T>> |
object2LongEntrySet()
Type Sensitive EntrySet to reduce boxing/unboxing and optionally Temp Object Allocation.
|
long |
put(T key,
long value)
Type Specific method to reduce boxing/unboxing of values
|
long |
putIfAbsent(T key,
long value)
Type Specific method to reduce boxing/unboxing of values
|
long |
rem(T key)
Type Specific remove function to reduce boxing/unboxing
|
long |
remOrDefault(T key,
long defaultValue)
Type-Specific Remove function with a default return value if wanted.
|
java.lang.Long |
remove(java.lang.Object key) |
boolean |
remove(java.lang.Object key,
java.lang.Object value) |
boolean |
remove(T key,
long value)
Type Specific remove function to reduce boxing/unboxing
|
long |
replace(T key,
long value)
A Type Specific replace method to reduce boxing/unboxing replace an existing value
|
boolean |
replace(T key,
long oldValue,
long newValue)
A Type Specific replace method to replace an existing value
|
int |
size() |
long |
subFrom(T key,
long value)
A Helper method to subtract from primitive from each other.
|
long |
supplyLongIfAbsent(T key,
LongSupplier valueProvider)
A Supplier based computeIfAbsent function to fill the most used usecase of this function
|
boolean |
trim(int size)
Trims the original collection down to the size of the current elements or the requested size depending which is bigger
|
LongCollection |
values() |
addToAll, entrySet, equals, getDefaultReturnValue, getOrDefault, hashCode, put, putAll, putAll, putAll, putAll, putAllIfAbsent, replaceLongs, replaceLongs, setDefaultReturnValueclearAndTrim, trimbuilder, compute, computeIfAbsent, computeIfPresent, forEach, merge, putAll, putAll, putIfAbsent, replace, replace, replaceAll, synchronize, synchronize, unmodifiableapplyAsLongpublic Object2LongOpenCustomHashMap(ObjectStrategy<? super T> strategy)
strategy - the strategy that allows hash control.java.lang.NullPointerException - if Strategy is nullpublic Object2LongOpenCustomHashMap(int minCapacity,
ObjectStrategy<? super T> strategy)
minCapacity - the minimum capacity the HashMap is allowed to be.strategy - the strategy that allows hash control.java.lang.NullPointerException - if Strategy is nulljava.lang.IllegalStateException - if the minimum capacity is negativepublic Object2LongOpenCustomHashMap(int minCapacity,
float loadFactor,
ObjectStrategy<? super T> strategy)
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.java.lang.NullPointerException - if Strategy is nulljava.lang.IllegalStateException - if the minimum capacity is negativejava.lang.IllegalStateException - if the loadfactor is either below/equal to 0 or above/equal to 1public Object2LongOpenCustomHashMap(T[] keys, java.lang.Long[] values, ObjectStrategy<? super T> strategy)
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.java.lang.NullPointerException - if Strategy is nulljava.lang.IllegalStateException - if the keys and values do not match in lenghtpublic Object2LongOpenCustomHashMap(T[] keys, java.lang.Long[] values, float loadFactor, ObjectStrategy<? super T> strategy)
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.java.lang.NullPointerException - if Strategy is nulljava.lang.IllegalStateException - if the keys and values do not match in lenghtjava.lang.IllegalStateException - if the loadfactor is either below/equal to 0 or above/equal to 1public Object2LongOpenCustomHashMap(T[] keys, long[] values, ObjectStrategy<? super T> strategy)
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.java.lang.NullPointerException - if Strategy is nulljava.lang.IllegalStateException - if the keys and values do not match in lenghtpublic Object2LongOpenCustomHashMap(T[] keys, long[] values, float loadFactor, ObjectStrategy<? super T> strategy)
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.java.lang.NullPointerException - if Strategy is nulljava.lang.IllegalStateException - if the keys and values do not match in lenghtjava.lang.IllegalStateException - if the loadfactor is either below/equal to 0 or above/equal to 1public Object2LongOpenCustomHashMap(java.util.Map<? extends T,? extends java.lang.Long> map, ObjectStrategy<? super T> strategy)
map - the values that should be present in the mapstrategy - the strategy that allows hash control.java.lang.NullPointerException - if Strategy is nullpublic Object2LongOpenCustomHashMap(java.util.Map<? extends T,? extends java.lang.Long> map, float loadFactor, ObjectStrategy<? super T> strategy)
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.java.lang.NullPointerException - if Strategy is nulljava.lang.IllegalStateException - if the loadfactor is either below/equal to 0 or above/equal to 1public Object2LongOpenCustomHashMap(Object2LongMap<T> map, ObjectStrategy<? super T> strategy)
map - the values that should be present in the mapstrategy - the strategy that allows hash control.java.lang.NullPointerException - if Strategy is nullpublic Object2LongOpenCustomHashMap(Object2LongMap<T> map, float loadFactor, ObjectStrategy<? super T> strategy)
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.java.lang.NullPointerException - if Strategy is nulljava.lang.IllegalStateException - if the loadfactor is either below/equal to 0 or above/equal to 1public long put(T key, long value)
Object2LongMapput in interface Object2LongMap<T>key - the key that should be inserted,value - the value that should be insertedMap.put(Object, Object)public long putIfAbsent(T key, long value)
Object2LongMapputIfAbsent in interface Object2LongMap<T>key - the key that should be inserted,value - the value that should be insertedMap.putIfAbsent(Object, Object)public long addTo(T key, long value)
Object2LongMapaddTo in interface Object2LongMap<T>key - the key that should be inserted,value - the value that should be inserted / addedpublic long subFrom(T key, long value)
Object2LongMapObject2LongMap.getDefaultReturnValue()
If the fence is reached the element will be automaticall removedsubFrom in interface Object2LongMap<T>key - that should be subtract fromvalue - that should be subtractpublic boolean containsKey(java.lang.Object key)
containsKey in interface java.util.Map<T,java.lang.Long>containsKey in class AbstractObject2LongMap<T>public boolean containsValue(long value)
Object2LongMapcontainsValue in interface Object2LongMap<T>containsValue in class AbstractObject2LongMap<T>value - element that is searched for@Deprecated public boolean containsValue(java.lang.Object value)
containsValue in interface java.util.Map<T,java.lang.Long>containsValue in interface Object2LongMap<T>containsValue in class java.util.AbstractMap<T,java.lang.Long>value - that is searched for.Map.containsValue(Object)public long rem(T key)
Object2LongMaprem in interface Object2LongMap<T>key - the element that should be removedpublic long remOrDefault(T key, long defaultValue)
Object2LongMapremOrDefault in interface Object2LongMap<T>key - the element that should be removeddefaultValue - the value that should be returned if the entry doesn't existMap.remove(Object, Object)public java.lang.Long remove(java.lang.Object key)
remove in interface java.util.Map<T,java.lang.Long>remove in interface Object2LongMap<T>remove in class AbstractObject2LongMap<T>key - the element that should be removedMap.remove(Object)public boolean remove(T key, long value)
Object2LongMapremove in interface Object2LongMap<T>key - the element that should be removedvalue - the expected value that should be foundMap.remove(Object, Object)public boolean remove(java.lang.Object key,
java.lang.Object value)
remove in interface java.util.Map<T,java.lang.Long>remove in interface Object2LongMap<T>key - the element that should be removedvalue - the expected value that should be foundMap.remove(Object, Object)public long getLong(T key)
Object2LongMapgetLong in interface Object2LongFunction<T>getLong in interface Object2LongMap<T>key - the key that is searched forpublic java.lang.Long get(java.lang.Object key)
get in interface java.util.Map<T,java.lang.Long>get in interface Object2LongMap<T>get in class AbstractObject2LongMap<T>public long getOrDefault(T key, long defaultValue)
Object2LongMapgetOrDefault in interface Object2LongMap<T>key - the key that is searched fordefaultValue - the value that should be returned if the key is not presentpublic Object2LongOpenCustomHashMap<T> copy()
Object2LongMapcopy in interface Object2LongMap<T>copy in class AbstractObject2LongMap<T>public ObjectSet<Object2LongMap.Entry<T>> object2LongEntrySet()
Object2LongMapobject2LongEntrySet in interface Object2LongMap<T>public ObjectSet<T> keySet()
keySet in interface java.util.Map<T,java.lang.Long>keySet in interface Object2LongMap<T>keySet in class AbstractObject2LongMap<T>public LongCollection values()
values in interface java.util.Map<T,java.lang.Long>values in interface Object2LongMap<T>values in class AbstractObject2LongMap<T>public void forEach(ObjectLongConsumer<T> action)
Object2LongMapforEach in interface Object2LongMap<T>forEach in class AbstractObject2LongMap<T>action - processor of the values that are iterator overpublic boolean replace(T key, long oldValue, long newValue)
Object2LongMapreplace in interface Object2LongMap<T>replace in class AbstractObject2LongMap<T>key - the element that should be searched foroldValue - the expected value to be replacednewValue - the value to replace the oldValue with.public long replace(T key, long value)
Object2LongMapreplace in interface Object2LongMap<T>replace in class AbstractObject2LongMap<T>key - the element that should be searched forvalue - the value to replace with.public long computeLong(T key, ObjectLongUnaryOperator<T> mappingFunction)
Object2LongMapcomputeLong in interface Object2LongMap<T>computeLong in class AbstractObject2LongMap<T>key - the key that should be computedmappingFunction - the operator that should generate the valuepublic long computeLongIfAbsent(T key, Object2LongFunction<T> mappingFunction)
Object2LongMapcomputeLongIfAbsent in interface Object2LongMap<T>computeLongIfAbsent in class AbstractObject2LongMap<T>key - the key that should be computedmappingFunction - the operator that should generate the value if not presentpublic long supplyLongIfAbsent(T key, LongSupplier valueProvider)
Object2LongMapsupplyLongIfAbsent in interface Object2LongMap<T>supplyLongIfAbsent in class AbstractObject2LongMap<T>key - the key that should be computedvalueProvider - the value if not presentpublic long computeLongIfPresent(T key, ObjectLongUnaryOperator<T> mappingFunction)
Object2LongMapcomputeLongIfPresent in interface Object2LongMap<T>computeLongIfPresent in class AbstractObject2LongMap<T>key - the key that should be computedmappingFunction - the operator that should generate the value if presentpublic long mergeLong(T key, long value, LongLongUnaryOperator mappingFunction)
Object2LongMapmergeLong in interface Object2LongMap<T>mergeLong in class AbstractObject2LongMap<T>key - the key that should be be searched forvalue - the value that should be merged withmappingFunction - the operator that should generate the new Valuepublic void mergeAllLong(Object2LongMap<T> m, LongLongUnaryOperator mappingFunction)
Object2LongMapmergeAllLong in interface Object2LongMap<T>mergeAllLong in class AbstractObject2LongMap<T>m - the entries that should be bulk addedmappingFunction - the operator that should generate the new Valuepublic int size()
public void clear()
public boolean trim(int size)
ITrimmabletrim in interface ITrimmablesize - the requested trim size.public void clearAndTrim(int size)
ITrimmableclearAndTrim in interface ITrimmablesize - the amount of elements that should be allowed