package com.alibaba.druid.util;
import java.util.LinkedHashMap;
import java.util.Map;
public class LRUCache<K, V> extends LinkedHashMap<K, V> {
private static final long serialVersionUID = 1L;
private final int maxSize;
public LRUCache(int maxSize){
this(maxSize, 16, 0.75f, false);
}
public LRUCache(int maxSize, int initialCapacity, float loadFactor, boolean accessOrder){
super(initialCapacity, loadFactor, accessOrder);
this.maxSize = maxSize;
}
protected boolean removeEldestEntry(Map.Entry<K, V> eldest) {
return this.size() > this.maxSize;
}
}
基于linkedHashMap实现的LRU算法
最新推荐文章于 2023-02-18 20:44:33 发布
本文介绍了一种基于 Java 的 LRU 缓存实现方法,通过继承 LinkedHashMap 并重写 removeEldestEntry 方法来实现缓存容量限制。该实现允许自定义初始容量、加载因子和访问顺序。
596

被折叠的 条评论
为什么被折叠?



