亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Map容器大小影響key的索引

tinyq / 960人閱讀

摘要:單元測(cè)試偶然發(fā)現(xiàn)的一個(gè)問題顯式指定了大小判等失敗可見如果顯式指定了容器大小會(huì)影響的索引。

單元測(cè)試偶然發(fā)現(xiàn)的Map一個(gè)問題

        Map map1 = new HashMap<>();
        map1.put("aaa", "foo");
        map1.put("bbb", "bar");
        map1.put("ccc", "foobar");
        System.out.println(map1); // {aaa=foo, ccc=foobar, bbb=bar}

        Map map2 = new HashMap<>(map1);
        assertEquals(map1.values().toArray(new String[]{}), map2.values().toArray(new String[]{}));
        System.out.println(map2); // {aaa=foo, ccc=foobar, bbb=bar}

        Map map3 = new HashMap<>(3); //顯式指定了大小
        map3.putAll(map1);
        System.out.println(map3); // {bbb=bar, ccc=foobar, aaa=foo}

        assertEquals(map1.values().toArray(new String[]{}), map3.values().toArray(new String[]{})); // 判等失敗

可見如果顯式指定了map容器大小 會(huì)影響key的索引。如下所示

默認(rèn)大小



key index
aaa 3
ccc 10
bbb 14
顯式指定了大小3



key index
aaa 3
ccc 2
bbb 2

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/65111.html

相關(guān)文章

  • 通過面試題,讓我們來了解Collection

    摘要:說一說迭代器通過集合對(duì)象獲取其對(duì)應(yīng)的對(duì)象判斷是否存在下一個(gè)元素取出該元素并將迭代器對(duì)象指向下一個(gè)元素取出元素的方式迭代器。對(duì)于使用容器者而言,具體的實(shí)現(xiàn)不重要,只要通過容器獲取到該實(shí)現(xiàn)的迭代器的對(duì)象即可,也就是方法。 前言 歡迎關(guān)注微信公眾號(hào):Coder編程獲取最新原創(chuàng)技術(shù)文章和相關(guān)免費(fèi)學(xué)習(xí)資料,隨時(shí)隨地學(xué)習(xí)技術(shù)知識(shí)!** 本章主要介紹Collection集合相關(guān)知識(shí),結(jié)合面試中會(huì)提到...

    HelKyle 評(píng)論0 收藏0
  • Java013-集合

    摘要:集合框架重點(diǎn)理解用于存儲(chǔ)數(shù)據(jù)的容器。集合容器在不斷向上抽取過程中。出現(xiàn)了集合體系。,刪除將集合中的元素全刪除,清空集合。刪除集合中指定的對(duì)象。注意刪除成功,集合的長度會(huì)改變。作用用于取集合中的元素。是集合特有的迭代器。是單列集合是雙列集合 集合框架(重點(diǎn)理解):用于存儲(chǔ)數(shù)據(jù)的容器。特點(diǎn):1:對(duì)象封裝數(shù)據(jù),對(duì)象多了也需要存儲(chǔ)。集合用于存儲(chǔ)對(duì)象。2:對(duì)象的個(gè)數(shù)確定可以使用數(shù)組,但是不確定怎...

    qpal 評(píng)論0 收藏0
  • 1、Map接口 2、模擬斗地主洗牌發(fā)牌

    摘要:中的集合稱為單列集合,中的集合稱為雙列集合。洗牌通過數(shù)字完成洗牌發(fā)牌發(fā)牌將每個(gè)人以及底牌設(shè)計(jì)為將最后張牌直接存放于底牌,剩余牌通過對(duì)取模依次發(fā)牌。存放的過程中要求數(shù)字大小與斗地主規(guī)則的大小對(duì)應(yīng)。 01Map集合概述 A:Map集合概述: 我們通過查看Map接口描述,發(fā)現(xiàn)Map接口下的集合與Collection接口下的集合,它們存儲(chǔ)數(shù)據(jù)的形式不同 ? a:Collection中的集...

    付倫 評(píng)論0 收藏0
  • HashMap、HashSet、Hashtable區(qū)別

    摘要:這樣做的目的是提高取對(duì)象的效率。在單線程情況下效率較高在的多線程情況下,同步操作能保證程序執(zhí)行的正確性。 突然發(fā)現(xiàn)整理了很多筆記,應(yīng)該放這里做備用 Hashtable和HashMap 主要區(qū)別:線程安全性,同步(synchronization),以及速度。 HashMap幾乎可以等價(jià)于Hashtable,除了HashMap是非synchronized的,并可以接受null。Hashta...

    zhangxiangliang 評(píng)論0 收藏0
  • Java筆記-容器源碼(持續(xù)更新)

    摘要:加載因子是哈希表在其容量自動(dòng)增加之前可以達(dá)到多滿的一種尺度。當(dāng)哈希表中的條目數(shù)超出了加載因子與當(dāng)前容量的乘積時(shí),則要對(duì)該哈希表進(jìn)行操作即重建內(nèi)部數(shù)據(jù)結(jié)構(gòu),從而哈希表將具有大約兩倍的桶數(shù)。成員變量每個(gè)對(duì)由封裝,存在了對(duì)象數(shù)組中。 雖是讀書筆記,但是如轉(zhuǎn)載請(qǐng)注明出處 http://segmentfault.com/blog/exploring/ .. 拒絕伸手復(fù)制黨 LinkedLis...

    mrli2016 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<