java最简单实现LRUCache

import java.util.LinkedHashMap;  
import java.util.Map;  
public LRUCache extends LinkedHashMap {  
  private int cacheSize;  
  public LRUCache(int cacheSize) {  
    super(16, 0.75, true);  
    this.cacheSize = cacheSize;  
  }  

  protected boolean removeEldestEntry(Map.Entry eldest) {  
    return size() >= cacheSize;  
  }  
} 

知识点
1. 构造函数参数:16表示初始化hashmap的数量;0.75表示hashmap数量达到0.75比重时,扩容2倍;true表示链表顺序是访问顺序。
2. removeEldestEntry方法,回收策略的重写方法。
3. cacheSize表示缓存数量。

你可能感兴趣的:(java)