{"id":1423,"date":"2026-05-07T14:36:14","date_gmt":"2026-05-07T06:36:14","guid":{"rendered":"https:\/\/yunyanglib.cn\/?p=1423"},"modified":"2026-05-07T14:36:14","modified_gmt":"2026-05-07T06:36:14","slug":"%e3%80%90java%e3%80%91linkedhashmap%e8%af%a6%e8%a7%a3%ef%bc%9a%e6%9c%89%e5%ba%8f%e6%98%a0%e5%b0%84%e4%b8%8elru%e7%bc%93%e5%ad%98%e5%ae%9e%e6%88%98","status":"publish","type":"post","link":"https:\/\/yunyanglib.cn\/?p=1423","title":{"rendered":"\u3010Java\u3011LinkedHashMap\u8be6\u89e3\uff1a\u6709\u5e8f\u6620\u5c04\u4e0eLRU\u7f13\u5b58\u5b9e\u6218"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u5927\u5bb6\u597d\uff0c\u6211\u662f\u4e91\u626c\uff5e \u4eca\u5929\u6765\u548c\u5927\u5bb6\u6df1\u5165\u804a\u804a Java \u96c6\u5408\u6846\u67b6\u4e2d\u7684 LinkedHashMap\u3002\u4f5c\u4e3a HashMap \u7684\u5b50\u7c7b\uff0c\u5b83\u4e0d\u4ec5\u7ee7\u627f\u4e86\u54c8\u5e0c\u8868\u7684\u9ad8\u6548\u7279\u6027\uff0c\u8fd8\u901a\u8fc7\u53cc\u5411\u94fe\u8868\u5b9e\u73b0\u4e86\u5143\u7d20\u7684\u6709\u5e8f\u7ba1\u7406\uff0c\u8fd9\u8ba9\u5b83\u5728\u5f88\u591a\u573a\u666f\u4e0b\u6bd4 HashMap \u66f4\u5b9e\u7528\u3002\u4e0b\u9762\u6211\u4eec\u4ece\u539f\u7406\u5230\u5b9e\u6218\uff0c\u4e00\u6b65\u6b65\u63ed\u5f00 LinkedHashMap \u7684\u795e\u79d8\u9762\u7eb1\uff5e<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e00\u3001LinkedHashMap \u6838\u5fc3\u7279\u6027\uff1a\u7ee7\u627f\u4e0e\u5b58\u50a8\u7ed3\u6784<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. \u7ee7\u627f\u5173\u7cfb<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">LinkedHashMap \u76f4\u63a5\u7ee7\u627f\u81ea HashMap\uff0c\u56e0\u6b64\u5b8c\u5168\u62e5\u6709 HashMap \u7684\u6240\u6709\u529f\u80fd\uff08\u5982\u54c8\u5e0c\u5b58\u50a8\u3001\u6269\u5bb9\u673a\u5236\u7b49\uff09\uff0c\u540c\u65f6\u5b9e\u73b0\u4e86 Map \u63a5\u53e3\uff0c\u4fdd\u8bc1\u4e86\u6620\u5c04\u8868\u7684\u57fa\u672c\u884c\u4e3a\u3002\u5176\u7c7b\u5b9a\u4e49\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>public class LinkedHashMap&lt;K,V&gt;\n    extends HashMap&lt;K,V&gt;\n    implements Map&lt;K,V&gt;\n{   \/\/ \u6838\u5fc3\u6e90\u7801\u7701\u7565}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2. \u5b58\u50a8\u7ed3\u6784\uff1a\u54c8\u5e0c\u8868 + \u53cc\u5411\u94fe\u8868<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">LinkedHashMap \u7684\u5b58\u50a8\u7ed3\u6784\u662f <strong>\u6570\u7ec4 + \u94fe\u8868 \/ \u7ea2\u9ed1\u6811\uff08\u54c8\u5e0c\u8868\uff09<\/strong> + <strong>\u53cc\u5411\u94fe\u8868<\/strong> \u7684\u7ec4\u5408\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u54c8\u5e0c\u8868\u90e8\u5206\uff1a\u4e0e HashMap \u4e00\u81f4\uff0c\u7528\u4e8e\u5feb\u901f\u67e5\u627e\u3001\u63d2\u5165\u548c\u5220\u9664\u5143\u7d20\uff0c\u89e3\u51b3\u54c8\u5e0c\u51b2\u7a81\uff1b<\/li>\n\n\n\n<li>\u53cc\u5411\u94fe\u8868\u90e8\u5206\uff1a\u8fd9\u662f LinkedHashMap \u7684\u6838\u5fc3\u6269\u5c55\uff0c\u901a\u8fc7 before \u548c after \u6307\u9488\u7ef4\u62a4\u5143\u7d20\u7684\u987a\u5e8f\uff08\u63d2\u5165\u987a\u5e8f\u6216\u8bbf\u95ee\u987a\u5e8f\uff09\u3002<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u5185\u90e8 Entry \u7c7b\u7684\u5173\u952e\u5b9e\u73b0\uff08\u7b80\u5316\u7248\u6e90\u7801\uff09\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>static class Entry&lt;K,V&gt; extends HashMap.Node&lt;K,V&gt; {\n    Entry&lt;K,V&gt; before, after;  \/\/ \u53cc\u5411\u94fe\u8868\u6307\u9488\n    Entry(int hash, K key, V value, Node&lt;K,V&gt; next) {\n        super(hash, key, value, next);\n    }<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e8c\u3001\u63d2\u5165\u987a\u5e8f\uff1a\u6709\u5e8f\u904d\u5386\u7684\u5b9e\u73b0<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">LinkedHashMap \u9ed8\u8ba4\u6309 <strong>\u63d2\u5165\u987a\u5e8f<\/strong> \u7ef4\u62a4\u5143\u7d20\uff0c\u904d\u5386\u65f6\u6709\u5e8f\u8f93\u51fa\uff0c\u8fd9\u662f\u5b83\u4e0e HashMap \u6700\u76f4\u89c2\u7684\u533a\u522b\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. \u5b9e\u73b0\u539f\u7406<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u901a\u8fc7\u91cd\u5199 HashMap \u7684 newNode() \u65b9\u6cd5\uff0c\u5728\u521b\u5efa\u65b0\u8282\u70b9\u65f6\u8c03\u7528 linkNodeLast()\uff0c\u5c06\u65b0\u8282\u70b9\u63d2\u5165\u53cc\u5411\u94fe\u8868\u7684\u5c3e\u90e8\uff0c\u4ece\u800c\u4fdd\u8bc1\u63d2\u5165\u987a\u5e8f\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ LinkedHashMap \u91cd\u5199 newNode \u65b9\u6cd5\nNode&lt;K,V&gt; newNode(int hash, K key, V value, Node&lt;K,V&gt; e) {\n    LinkedHashMap.Entry&lt;K,V&gt; p =\n        new LinkedHashMap.Entry&lt;&gt;(hash, key, value, e);\n    linkNodeLast(p);   \/\/ \u63d2\u5165\u53cc\u5411\u94fe\u8868\u5c3e\u90e8\n    return p;\n}\n\/\/ \u5c06\u8282\u70b9\u63d2\u5165\u53cc\u5411\u94fe\u8868\u5c3e\u90e8\nprivate void linkNodeLast(LinkedHashMap.Entry&lt;K,V&gt; p) {\n    LinkedHashMap.Entry&lt;K,V&gt; last = tail;\n    tail = p;\n    if (last == null)\n        head = p;\n    else {\n        p.before = last;\n        last.after = p;\n    }\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2. \u4ee3\u7801\u793a\u4f8b\uff1a\u63d2\u5165\u987a\u5e8f\u904d\u5386<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>public class LinkedHashMapInsertOrderDemo {\n    public static void main(String&#91;] args) {\n        Map&lt;String, String&gt; linkedHashMap = new LinkedHashMap&lt;&gt;();\n        Map&lt;String, String&gt; hashMap = new HashMap&lt;&gt;(); \/\/ \u63d2\u5165\u5143\u7d20\n        linkedHashMap.put(\"name\", \"\u4e91\u626c\");\n        linkedHashMap.put(\"age\", \"18\");\n        linkedHashMap.put(\"blog\", \"\u4e91\u626c\u306eBlog\");\n        hashMap.put(\"name\", \"\u4e91\u626c\");\n        hashMap.put(\"age\", \"18\");\n        hashMap.put(\"blog\", \"\u4e91\u626c\u306eBlog\");\n       \/\/ \u904d\u5386\u8f93\u51fa\n       System.out.println(\"LinkedHashMap \u63d2\u5165\u987a\u5e8f\u904d\u5386\uff1a\");\n       for (Map.Entry&lt;String, String&gt; entry : linkedHashMap.entrySet()) {\n          System.out.println(entry.getKey() + \":\" + entry.getValue());\n        }\n       System.out.println(\"\\nHashMap \u65e0\u5e8f\u904d\u5386\uff1a\");\n       for (Map.Entry&lt;String, String&gt; entry : hashMap.entrySet()) {\n          System.out.println(entry.getKey() + \":\" + entry.getValue());\n        }\n    }\n}<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">\u8f93\u51fa\u7ed3\u679c\uff1a<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code>LinkedHashMap \u63d2\u5165\u987a\u5e8f\u904d\u5386\uff1a\nname:\u4e91\u626c\nage:18\nblog:\u4e91\u626c\u306eBlog\n\nHashMap \u65e0\u5e8f\u904d\u5386\uff1a\nname:\u4e91\u626c\nblog:\u4e91\u626c\u306eBlog\nage:18<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">3. \u4e0e HashMap \u7684\u5bf9\u6bd4<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>\u7279\u6027<\/td><td>HashMap<\/td><td>LinkedHashMap<\/td><\/tr><tr><td>\u987a\u5e8f<\/td><td>\u65e0\u5e8f<\/td><td>\u6709\u5e8f\uff08\u63d2\u5165 \/ \u8bbf\u95ee\u987a\u5e8f\uff09<\/td><\/tr><tr><td>\u6027\u80fd<\/td><td>\u63d2\u5165 \/ \u5220\u9664\u66f4\u5feb<\/td><td>\u7565\u6162\uff08\u9700\u7ef4\u62a4\u53cc\u5411\u94fe\u8868\uff09<\/td><\/tr><tr><td>\u9002\u7528\u573a\u666f<\/td><td>\u65e0\u9700\u987a\u5e8f\uff0c\u8ffd\u6c42\u9ad8\u6548<\/td><td>\u9700\u8981\u6709\u5e8f\u904d\u5386\u7684\u573a\u666f<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e09\u3001\u8bbf\u95ee\u987a\u5e8f\uff1a\u52a8\u6001\u8c03\u6574\u5143\u7d20\u4f4d\u7f6e<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">LinkedHashMap \u652f\u6301\u6309 <strong>\u8bbf\u95ee\u987a\u5e8f<\/strong> \u6392\u5e8f\uff08\u5373\u6bcf\u6b21\u8bbf\u95ee\u5143\u7d20\u540e\uff0c\u5c06\u5176\u79fb\u5230\u53cc\u5411\u94fe\u8868\u5c3e\u90e8\uff09\uff0c\u53ea\u9700\u5728\u6784\u9020\u65f6\u6307\u5b9a accessOrder=true\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. \u5b9e\u73b0\u539f\u7406<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u901a\u8fc7\u91cd\u5199 afterNodeAccess() \u65b9\u6cd5\uff0c\u5728\u8c03\u7528 get() \u6216 put() \u8bbf\u95ee\u5143\u7d20\u540e\uff0c\u5c06\u8be5\u8282\u70b9\u79fb\u5230\u94fe\u8868\u5c3e\u90e8\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ \u8bbf\u95ee\u5143\u7d20\u540e\u89e6\u53d1\uff0c\u5c06\u8282\u70b9\u79fb\u5230\u5c3e\u90e8\nvoid afterNodeAccess(Node&lt;K,V&gt; e) { \/\/ move node to last\n    LinkedHashMap.Entry&lt;K,V&gt; last;\n    if (accessOrder &amp;&amp; (last = tail) != e) {\n        LinkedHashMap.Entry&lt;K,V&gt; p =\n            (LinkedHashMap.Entry&lt;K,V&gt;)e, b = p.before, a = p.after\n        p.after = null;\n        if (b == null)\n            head = a;\n        else\n            b.after = a;\n        if (a != null)\n            a.before = b;\n        else\n            last = b;\n        if (last == null)\n            head = p;\n        else {\n            p.before = last;\n            last.after = p;\n        }\n        tail = p;\n        ++modCount;\n    }\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2. \u4ee3\u7801\u793a\u4f8b\uff1a\u8bbf\u95ee\u987a\u5e8f\u904d\u5386<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>public class LinkedHashMapAccessOrderDemo {\n    public static void main(String&#91;] args) {\n         \/\/ \u6307\u5b9a accessOrder=true\uff0c\u5f00\u542f\u8bbf\u95ee\u987a\u5e8f\n        LinkedHashMap&lt;String, String&gt; linkedHashMap = new LinkedHashMap&lt;&gt;(16, 0.75f, true);\n\n        linkedHashMap.put(\"A\", \"Apple\");\n        linkedHashMap.put(\"B\", \"Banana\");\n        linkedHashMap.put(\"C\", \"Cherry\");\n\n        System.out.println(\"\u521d\u59cb\u987a\u5e8f\uff08\u63d2\u5165\u987a\u5e8f\uff09\uff1a\" + linkedHashMap.keySet());\n\n        \/\/ \u8bbf\u95ee\u5143\u7d20 B\n        linkedHashMap.get(\"B\");\n        System.out.println(\"\u8bbf\u95ee B \u540e\u987a\u5e8f\uff1a\" + linkedHashMap.keySet());\n\n        \/\/ \u8bbf\u95ee\u5143\u7d20 A\n        linkedHashMap.get(\"A\");\n        System.out.println(\"\u8bbf\u95ee A \u540e\u987a\u5e8f\uff1a\" + linkedHashMap.keySet());\n\n    }\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u8f93\u51fa\u7ed3\u679c\uff1a<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>\u521d\u59cb\u987a\u5e8f\uff08\u63d2\u5165\u987a\u5e8f\uff09\uff1a&#91;A, B, C]\n\u8bbf\u95ee B \u540e\u987a\u5e8f\uff1a&#91;A, C, B]\n\u8bbf\u95ee A \u540e\u987a\u5e8f\uff1a&#91;C, B, A]<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u53ef\u4ee5\u770b\u5230\uff0c\u6bcf\u6b21\u8bbf\u95ee\u7684\u5143\u7d20\u90fd\u4f1a\u88ab\u79fb\u5230\u94fe\u8868\u5c3e\u90e8\uff0c\u5c3e\u90e8\u5143\u7d20\u59cb\u7ec8\u662f\u6700\u8fd1\u8bbf\u95ee\u7684\u5143\u7d20\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u56db\u3001\u5b9e\u6218\uff1a\u7528 LinkedHashMap \u5b9e\u73b0 LRU \u7f13\u5b58<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">LRU\uff08Least Recently Used\uff09\u7f13\u5b58\u7b56\u7565\u662f\u300c\u6700\u8fd1\u6700\u5c11\u4f7f\u7528\u6dd8\u6c70\u7b97\u6cd5\u300d\uff0c\u800c LinkedHashMap \u5929\u751f\u652f\u6301\u8bbf\u95ee\u987a\u5e8f\uff0c\u53ea\u9700\u91cd\u5199 removeEldestEntry() \u65b9\u6cd5\u5373\u53ef\u5b9e\u73b0\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. \u5b9e\u73b0\u539f\u7406<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>afterNodeInsertion()\uff1a\u63d2\u5165\u65b0\u5143\u7d20\u540e\u89e6\u53d1\uff0c\u68c0\u67e5\u662f\u5426\u9700\u8981\u6dd8\u6c70\u6700\u4e45\u672a\u4f7f\u7528\u7684\u5143\u7d20\uff08\u94fe\u8868\u5934\u90e8\uff09\uff1b<\/li>\n\n\n\n<li>removeEldestEntry()\uff1a\u5224\u65ad\u662f\u5426\u6dd8\u6c70\u6700\u65e7\u5143\u7d20\uff0c\u9ed8\u8ba4\u8fd4\u56de false\uff08\u4e0d\u6dd8\u6c70\uff09\uff0c\u91cd\u5199\u540e\u53ef\u6839\u636e\u7f13\u5b58\u5927\u5c0f\u63a7\u5236\u3002<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2. \u4ee3\u7801\u793a\u4f8b\uff1aLRU \u7f13\u5b58\u5b9e\u73b0<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>public class LRUCache &lt;K, V&gt; extends LinkedHashMap&lt;K, V&gt; {\n    private final int MAX_CAPACITY;  \/\/ \u7f13\u5b58\u6700\u5927\u5bb9\u91cf\n\n    \/\/ \u6784\u9020\u65b9\u6cd5\uff1a\u6307\u5b9a\u5bb9\u91cf\u548c\u8bbf\u95ee\u987a\u5e8f\n    public LRUCache(int initialCapacity) {\n        super(initialCapacity, 0.75f, true);\n        this.MAX_CAPACITY = initialCapacity;\n    }\n\n    \/\/ \u91cd\u5199\u6dd8\u6c70\u7b56\u7565\uff1a\u5f53\u5143\u7d20\u6570\u91cf\u8d85\u8fc7\u5bb9\u91cf\u65f6\uff0c\u6dd8\u6c70\u6700\u4e45\u672a\u4f7f\u7528\u7684\u5143\u7d20\n    @Override\n    protected boolean removeEldestEntry(Map.Entry&lt;K,V&gt; entry){\n        return size() &gt; MAX_CAPACITY;\n    }\n\n    \/\/ \u6d4b\u8bd5\n    public static void main(String&#91;] args) {\n        LRUCache&lt;String, String&gt; lruCache = new LRUCache&lt;&gt;(3);\n\n        lruCache.put(\"1\", \"Java\");\n        lruCache.put(\"2\", \"MySQL\");\n        lruCache.put(\"3\", \"Redis\");\n        System.out.println(\"\u7f13\u5b58\u521d\u59cb\u5316\uff1a\" + lruCache.keySet()); \/\/ &#91;1,2,3]\n\n        \/\/ \u8bbf\u95ee\u5143\u7d20 2\n        lruCache.get(\"2\");\n        System.out.println(\"\u8bbf\u95ee 2 \u540e\uff1a\" + lruCache.keySet()); \/\/ &#91;1,3,2]\n\n        \/\/ \u63d2\u5165\u65b0\u5143\u7d20 4\uff0c\u89e6\u53d1\u6dd8\u6c70\uff08\u5bb9\u91cf3\uff09\n        lruCache.put(\"4\", \"Spring\");\n        System.out.println(\"\u63d2\u5165 4 \u540e\uff08\u6dd8\u6c70\u6700\u4e45\u672a\u7528\u76841\uff09\uff1a\" + lruCache.keySet()); \/\/ &#91;3,2,4]\n\n        \/\/ \u8bbf\u95ee\u5143\u7d20 3\uff0c\u518d\u63d2\u5165\u65b0\u5143\u7d20 5\n        lruCache.get(\"3\");\n        lruCache.put(\"5\", \"Docker\");\n        System.out.println(\"\u63d2\u5165 5 \u540e\uff08\u6dd8\u6c70\u6700\u4e45\u672a\u7528\u76842\uff09\uff1a\" + lruCache.keySet()); \/\/ &#91;4,3,5]\n    }\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u8f93\u51fa\u7ed3\u679c\uff1a<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>\u7f13\u5b58\u521d\u59cb\u5316\uff1a&#91;1, 2, 3]\n\u8bbf\u95ee 2 \u540e\uff1a&#91;1, 3, 2]\n\u63d2\u5165 4 \u540e\uff08\u6dd8\u6c70\u6700\u4e45\u672a\u7528\u76841\uff09\uff1a&#91;3, 2, 4]\n\u63d2\u5165 5 \u540e\uff08\u6dd8\u6c70\u6700\u4e45\u672a\u7528\u76842\uff09\uff1a&#91;4, 3, 5]<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5b8c\u7f8e\u5b9e\u73b0\u4e86 LRU \u7f13\u5b58\u7684\u6838\u5fc3\u903b\u8f91\uff1a\u5f53\u7f13\u5b58\u6ee1\u65f6\uff0c\u81ea\u52a8\u6dd8\u6c70\u6700\u4e45\u672a\u4f7f\u7528\u7684\u5143\u7d20\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e94\u3001\u603b\u7ed3<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">LinkedHashMap \u4f5c\u4e3a HashMap \u7684\u589e\u5f3a\u7248\uff0c\u6838\u5fc3\u4f18\u52bf\u5728\u4e8e\u300c\u6709\u5e8f\u6027\u300d\u548c\u300cLRU \u7f13\u5b58\u652f\u6301\u300d\uff0c\u603b\u7ed3\u5982\u4e0b\uff1a<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>\u7ee7\u627f\u4e0e\u7ed3\u6784<\/strong>\uff1a\u7ee7\u627f HashMap\uff0c\u5b58\u50a8\u7ed3\u6784\u4e3a\u300c\u54c8\u5e0c\u8868 + \u53cc\u5411\u94fe\u8868\u300d\uff1b<\/li>\n\n\n\n<li><strong>\u6392\u5e8f\u65b9\u5f0f<\/strong>\uff1a<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u63d2\u5165\u987a\u5e8f\uff08\u9ed8\u8ba4\uff09\uff1aaccessOrder=false\uff0c\u9002\u5408\u9700\u8981\u4fdd\u7559\u63d2\u5165\u987a\u5e8f\u7684\u573a\u666f\uff1b<\/li>\n\n\n\n<li>\u8bbf\u95ee\u987a\u5e8f\uff08accessOrder=true\uff09\uff1a\u9002\u5408\u9700\u8981\u6309\u8bbf\u95ee\u9891\u7387\u6392\u5e8f\u7684\u573a\u666f\uff1b<\/li>\n<\/ul>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li><strong>LRU \u7f13\u5b58<\/strong>\uff1a\u91cd\u5199 removeEldestEntry() \u5373\u53ef\u5feb\u901f\u5b9e\u73b0\uff0c\u65e0\u9700\u624b\u52a8\u7ef4\u62a4\u94fe\u8868\uff1b<\/li>\n\n\n\n<li><strong>\u6027\u80fd\u6743\u8861<\/strong>\uff1a\u6bd4 HashMap \u591a\u7ef4\u62a4\u53cc\u5411\u94fe\u8868\uff0c\u63d2\u5165 \/ \u5220\u9664\u7565\u6162\uff0c\u4f46\u904d\u5386\u6709\u5e8f\u4e14\u652f\u6301\u7279\u6b8a\u573a\u666f\u3002<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u5982\u679c\u4f60\u7684\u4e1a\u52a1\u9700\u8981\u6709\u5e8f\u6620\u5c04\u6216\u7b80\u5355\u7684 LRU \u7f13\u5b58\uff0cLinkedHashMap \u7edd\u5bf9\u662f\u6bd4 HashMap \u66f4\u4f18\u7684\u9009\u62e9\uff5e \u6b22\u8fce\u5728\u8bc4\u8bba\u533a\u4ea4\u6d41\u4f60\u7684\u4f7f\u7528\u573a\u666f\u548c\u95ee\u9898\uff0c\u6211\u4eec\u4e0b\u671f\u518d\u89c1\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5927\u5bb6\u597d\uff0c\u6211\u662f\u4e91\u626c\uff5e \u4eca\u5929\u6765\u548c\u5927\u5bb6\u6df1\u5165\u804a\u804a Java \u96c6\u5408\u6846\u67b6\u4e2d\u7684 LinkedHashMap\u3002\u4f5c\u4e3a HashM<\/p>\n<div class=\"more-link\">\n\t\t\t\t <a href=\"https:\/\/yunyanglib.cn\/?p=1423\" class=\"link-btn theme-btn\"><span>Read More <\/span> <i class=\"fa fa-caret-right\"><\/i><\/a>\n\t\t\t<\/div>\n","protected":false},"author":1,"featured_media":1474,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20],"tags":[15],"class_list":["post-1423","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-java"],"_links":{"self":[{"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=\/wp\/v2\/posts\/1423","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1423"}],"version-history":[{"count":4,"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=\/wp\/v2\/posts\/1423\/revisions"}],"predecessor-version":[{"id":1428,"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=\/wp\/v2\/posts\/1423\/revisions\/1428"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=\/wp\/v2\/media\/1474"}],"wp:attachment":[{"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1423"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1423"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/yunyanglib.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1423"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}