首页javacacheJava Data Structure - 如何通过使用LinkedHashMap创建最近最少使用(LRU)缓存

Java Data Structure - 如何通过使用LinkedHashMap创建最近最少使用(LRU)缓存

我们想知道如何通过使用LinkedHashMap创建最近最少使用(LRU)缓存。
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;

public class Main {
  public static void main(String[] argv) throws Exception {
    final int MAX_ENTRIES = 100;
    Map cache = new LinkedHashMap(MAX_ENTRIES + 1, .75F, true) {
      public boolean removeEldestEntry(Map.Entry eldest) {
        return size() > MAX_ENTRIES;
      }
    };

    Object key = "key";
    Object value = "value";
    cache.put(key, value);
    Object o = cache.get(key);
    if (o == null && !cache.containsKey(key)) {
    }
    cache = (Map) Collections.synchronizedMap(cache);
  }
}