Package org.hcjf.utils
Class LruMap<K,V>
- java.lang.Object
-
- org.hcjf.utils.LruMap<K,V>
-
- Type Parameters:
K- Key type.V- Value type.
- All Implemented Interfaces:
java.util.Map<K,V>
public class LruMap<K,V> extends java.lang.Object implements java.util.Map<K,V>This map implementation use an algorithm to maintains a fixed size into the map with the elements least recently used (LRU).
-
-
Method Summary
Modifier and Type Method Description voidclear()Vcompute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)VcomputeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)VcomputeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)booleancontainsKey(java.lang.Object key)booleancontainsValue(java.lang.Object value)java.util.Set<java.util.Map.Entry<K,V>>entrySet()booleanequals(java.lang.Object o)voidforEach(java.util.function.BiConsumer<? super K,? super V> action)Vget(java.lang.Object key)java.lang.IntegergetMaxSize()Returns the max size of the map.VgetOrDefault(java.lang.Object key, V defaultValue)inthashCode()booleanisEmpty()java.util.Set<K>keySet()Vmerge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)Vput(K key, V value)voidputAll(java.util.Map<? extends K,? extends V> m)VputIfAbsent(K key, V value)Vremove(java.lang.Object key)booleanremove(java.lang.Object key, java.lang.Object value)Vreplace(K key, V value)booleanreplace(K key, V oldValue, V newValue)voidreplaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)voidsetMaxSize(java.lang.Integer maxSize)Set the max size of the map.intsize()java.util.Collection<V>values()
-
-
-
Method Detail
-
getMaxSize
public final java.lang.Integer getMaxSize()
Returns the max size of the map.- Returns:
- Max size of the map.
-
setMaxSize
public final void setMaxSize(java.lang.Integer maxSize)
Set the max size of the map.- Parameters:
maxSize- Max size of the map.
-
containsKey
public boolean containsKey(java.lang.Object key)
-
containsValue
public boolean containsValue(java.lang.Object value)
-
values
public java.util.Collection<V> values()
-
equals
public boolean equals(java.lang.Object o)
-
hashCode
public int hashCode()
-
replaceAll
public void replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
-
remove
public boolean remove(java.lang.Object key, java.lang.Object value)
-
computeIfAbsent
public V computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
-
computeIfPresent
public V computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
-
compute
public V compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
-
-