<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # HashMap TreeMap LinkedHashMap > HashMap的構造方法 . 合適的遍歷 . 復制轉換 > HashMap的底層原理 > HashMap, TreeMap, LinkedHashMap 對比 ## 1. 通用方法 : ``` put(key, value):存入Map中一個key/value映射 get(Object key):返回指定鍵所映射的值 remove(Object key):從該Map中刪除一個鍵的映射 containsKey(Object key):是否包含指定的key testMap.getOrDefault(key, 0)); ``` ``` Map userMap = new HashMap<>(); userMap.put(122, "a"); userMap.get(122); userMap.getOrDefault(122, ""); userMap.remove(122); userMap.containsKey(122); ``` ## 2. HashMap的構造方法 : ``` HashMap() hashMap(int initialCapacity) 指名初始化大小 hashMap(int initialCapacity, float loadFactor) 參數因子:指明在什么情況下會進行擴容 ``` ## 3. HashMap的Entry結構 : ``` static class Entry<K, V> implements Map.Entry<K, V> { final K key; V value; Entry<K, V> next; final int hash; } ``` ## 4. Map的4種遍歷方式: 注: Map的打印輸出不是按照key的固定順序輸出的. ### 1. 利用keySet進行遍歷 (速度最慢) ``` for (Integer key : userMap.keySet()) { System.out.println(key + "***" + userMap.get(key)); } ``` ### 2. 利用values進行遍歷 (性能最好) ``` for (String v : userMap.values()) { System.out.println(v); } ``` ### 3.利用entrySet進行遍歷 (速度均衡) ``` for (Map.Entry entry:userMap.entrySet()) { System.out.println(entry.getKey() + "+++" + entry.getValue()); } ``` ### 4.利用Iterator迭代器進行遍歷 (性能第2) ``` Iterator<Map.Entry<Integer, String> it = userMap.entrySet().iterator(); while (it.hasNext()) { Map.Entry entry = it.next(); System.out.println(entry.getKey() + "+++" + entry.getValue()); } ``` ### 5. 性能分析 ``` public static Map intputMat() { Map userMap = new HashMap<>(); String[] str = new String[]{"a","b","b","d","e","f","g","h","m","n"}; String key; int value; for (int i = 0; i <= 100000; i++) { int m = (int)(Math.random()*10); key = str[m] + i * 100; value = i; userMap.put(key, value); } return userMap; } ``` 結論 : values 和 Iterator 最快. keySet 最慢.
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看