LinkedHashMap实现LRU算法

2019-05-16  本文已影响0人  斜月86
 public LinkedHashMap<String, String> keyMap;
    private Integer si = 5;
    public String eldestKey;

    @Before
    public void init() {
        keyMap = new LinkedHashMap<String, String>(si, .75F, true) {
            private static final long serialVersionUID = 4485729692063620114L;
            @Override
            protected boolean removeEldestEntry(Map.Entry<String, String> eldest) {
                boolean tooBig = size() > si;
                if (tooBig) {
                    eldestKey = eldest.getKey();
                }
                return tooBig;
            }
        };
    }

    @Test
    public void test01() {
        System.out.println(keyMap.put("1", "2"));
        System.out.println(keyMap.put("2", "2"));
        System.out.println(keyMap.put("3", "2"));
        System.out.println(keyMap.put("4", "2"));
        System.out.println(keyMap.put("5", "2"));
        System.out.println(keyMap.put("6", "2"));
        System.out.println(keyMap.put("7", "2"));
        System.out.println(keyMap.put("8", "2"));
    }

上一篇 下一篇

猜你喜欢

热点阅读