<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          為什么HashSet里的value不是null?

          共 696字,需瀏覽 2分鐘

           ·

          2021-08-22 00:07


            點(diǎn)擊上方“JavaEdge”,關(guān)注公眾號(hào)

          設(shè)為“星標(biāo)”,好文章不錯(cuò)過(guò)!


          最近面試,遇到一些關(guān)于 HashSet 的不尋常面試題:

          HashSet底層的value為啥不是個(gè) null,效率不是會(huì)更高,還省得創(chuàng)建對(duì)象了嗎?

          要弄清這個(gè)問(wèn)題,我們先來(lái)看下,這個(gè) value 何時(shí)會(huì)被用到呢?



          HashSet#add



          直接調(diào)用的HashMap#put

          若HashMap#put:

          • 成功,則返回null

          • 失敗,說(shuō)明key已存在,就返回該key的value


          綜上,若底層hashmap的value維護(hù)的是null,則 HashMap#put 成功或失敗都會(huì)返回null,則 HashSet#add 每次返回值都是true,就無(wú)法確認(rèn)add是否成功了。



          HashSet#remove




          HashSet的remove依舊直接使用HashMap#remove

          HashMap#remove會(huì)返回value,所以若底層value都存null,就無(wú)法區(qū)分是否移除成功。


          往期推薦


          擁抱Kubernetes,再見(jiàn)了Spring Cloud

          百度二面:一個(gè)線程O(píng)OM了,其它線程還能運(yùn)行嗎?

          這一次徹底搞懂JDK動(dòng)態(tài)代理

          Iterator迭代器到底是什么?


          目前交流群已有 800+人,旨在促進(jìn)技術(shù)交流,可關(guān)注公眾號(hào)添加筆者微信邀請(qǐng)進(jìn)群



          喜歡文章,點(diǎn)個(gè)“在看、點(diǎn)贊、分享”素質(zhì)三連支持一下~

          瀏覽 51
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  美女操逼动漫 | 亚洲1区2区3区4区5区 | 黄色A及片视频 | 成年人黄色视频在线观看 | 亚洲欧洲a片 |