Rising Sun

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            148 隨筆 :: 0 文章 :: 22 評論 :: 0 Trackbacks
          Hashmap loadFactor設置初使化值的時候必須設置 loadFactor

          1、請查看 hashmap 如何初使化

           

          代碼:

           public HashMap(int initialCapacity, float loadFactor) {

                  if (initialCapacity < 0)

                      throw new IllegalArgumentException("Illegal initial capacity: " +

                                                         initialCapacity);

                  if (initialCapacity > MAXIMUM_CAPACITY)

                      initialCapacity = MAXIMUM_CAPACITY;

                  if (loadFactor <= 0 || Float.isNaN(loadFactor))

                      throw new IllegalArgumentException("Illegal load factor: " +

                                                         loadFactor);

           

                  // Find a power of 2 >= initialCapacity

                  int capacity = 1;

                  while (capacity < initialCapacity)

                      capacity <<= 1;

           

                  this.loadFactor = loadFactor;

                  threshold = (int)(capacity * loadFactor);

                  table = new Entry[capacity];

                  init();

          }

           

          Map map = new HashMap(9);

           

          while (capacity < initialCapacity)

                      capacity <<= 1;

           

          capacity的容量為 16

          threshold擴容閥值 16*0.75 =12

           

          和9沒什么關系 哈

           

          Map map = new HashMap(91);

           

          capacity的容量為 16

          threshold擴容閥值 16*1 =16
          不過這個 9 變小一點 就不一樣了 如3時
          capacity 是4



           

          posted on 2013-02-01 16:37 brock 閱讀(2923) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 仲巴县| 军事| 虞城县| 潞城市| 手游| 湖南省| 灵武市| 定日县| 南宁市| 高雄县| 扎鲁特旗| 临汾市| 滦平县| 井冈山市| 攀枝花市| 玉林市| 腾冲县| 怀仁县| 竹北市| 鄂温| 沂水县| 明溪县| 额尔古纳市| 南城县| 大化| 隆安县| 宁波市| 姚安县| 星子县| 汉阴县| 柘城县| 贡嘎县| 新河县| 洞口县| 游戏| 梁山县| 潼关县| 乌鲁木齐县| 海丰县| 无锡市| 曲阜市|