K - キーの型V - 値の型public class LRUMap<K,V>
extends java.util.LinkedHashMap<K,V>
Map実装クラス。
指定された最大容量を超過する場合、
最も参照されない期間が長いエントリが削除される。HashMap,
LinkedHashMap,
Serialized Form| Modifier and Type | Class and Description |
|---|---|
static interface |
LRUMap.RemoveListener<K,V>
LRUアルゴリズムにより、エントリが削除された場合に呼び出されるコールバックインタフェース。
|
| Constructor and Description |
|---|
LRUMap(int maxSize)
コンストラクタ。
|
LRUMap(int initialCapacity,
float loadFactor,
int maxSize)
コンストラクタ。
|
LRUMap(int initialCapacity,
float loadFactor,
int maxSize,
LRUMap.RemoveListener<K,V> listener)
コンストラクタ。
初期容量<最大サイズの場合、最大サイズが初期容量となる。
|
LRUMap(int initialCapacity,
int maxSize)
コンストラクタ。
|
LRUMap(int maxSize,
LRUMap.RemoveListener<K,V> listener)
コンストラクタ。
|
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
removeEldestEntry(java.util.Map.Entry<K,V> eldest)
現在のサイズが最大サイズより大きい場合、真を返却する。
|
clear, containsValue, entrySet, forEach, get, getOrDefault, keySet, replaceAll, valuesclone, compute, computeIfAbsent, computeIfPresent, containsKey, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, sizepublic LRUMap(int initialCapacity,
float loadFactor,
int maxSize,
LRUMap.RemoveListener<K,V> listener)
initialCapacity - 初期容量loadFactor - 負荷係数maxSize - 最大サイズlistener - リスナーpublic LRUMap(int initialCapacity,
float loadFactor,
int maxSize)
initialCapacity - 初期容量loadFactor - 負荷係数maxSize - 最大サイズpublic LRUMap(int initialCapacity,
int maxSize)
initialCapacity - 初期容量maxSize - 最大サイズpublic LRUMap(int maxSize,
LRUMap.RemoveListener<K,V> listener)
maxSize - 最大サイズlistener - リスナーpublic LRUMap(int maxSize)
maxSize - 最大サイズ