【Java】设计和编码实现一个LRU过期策略的缓存数据结构

import java.util.LinkedHashMap;
import java.util.Map;

/**
 * @author gsl
 * @date 2021-08-16 15:17
 */
public class LRUMap<K, V> extends LinkedHashMap<K, V> {

    public final int maxEntries;

    public LRUMap(int maxEntries) {
        this(16, maxEntries);
    }

    public LRUMap(int initialSize, int maxEntries) {
        super(initialSize, 0.8f, true);
        this.maxEntries = maxEntries;
    }

    @Override
    protected boolean removeEldestEntry(Map.Entry<K, V> eldest) {
        return size() > maxEntries;
    }
}

 

posted @ 2021-08-16 15:35  CEO雷总  阅读(72)  评论(0编辑  收藏  举报