<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>

          一篇文章搞定java中集合的經(jīng)典面試題

          共 1262字,需瀏覽 3分鐘

           ·

          2020-10-13 05:34

          點(diǎn)擊上方藍(lán)色字體,選擇“標(biāo)星公眾號(hào)”

          優(yōu)質(zhì)文章,第一時(shí)間送達(dá)

          66套java從入門(mén)到精通實(shí)戰(zhàn)課程分享

          Java中集合的常見(jiàn)問(wèn)題
          1.HashMap與HashTable區(qū)別?
          在多線程任務(wù)中,HashMap不安全但效率高。HashTable安全但效率低。

          2.ArrayList和LinkedlList的區(qū)別?
          ArrayList使用的是數(shù)組結(jié)構(gòu),對(duì)于增加刪除慢,查找快。
          LinkedList使用的是雙向鏈表結(jié)構(gòu),對(duì)于增加刪除快,查找慢。

          3.HashMap構(gòu)造方法中的初始容量,加載因子的理解。
          初始容量表示哈希桶的數(shù)量,初始容量要合理,太少會(huì)散列很多次,浪費(fèi)計(jì)算機(jī)性能。太大會(huì)浪費(fèi)內(nèi)存空間。
          加載因子通常為0.75,當(dāng)哈希桶中百分之75的桶有數(shù)據(jù),則會(huì)將桶的數(shù)量翻倍。加載因子也要合理,太小會(huì)浪費(fèi)內(nèi)存,但查詢方便。太大雖節(jié)省空間但查詢麻煩。

          4.HashMap的底層實(shí)現(xiàn)原理
          它是基于哈希表的Map接口的實(shí)現(xiàn)類(lèi)。哈希表是一種對(duì)象數(shù)組加鏈表的數(shù)據(jù)結(jié)構(gòu),我們寫(xiě)的每一個(gè)類(lèi)都最好重寫(xiě)hashcode方法,每一個(gè)對(duì)象調(diào)用此方法都會(huì)返回唯一的對(duì)象的哈希碼值,對(duì)哈希碼值求余得到對(duì)象數(shù)組的下標(biāo),將對(duì)象存放在對(duì)應(yīng)的哈希桶中,余數(shù)相同則放在同一個(gè)哈希桶,變?yōu)殒湵淼臄?shù)據(jù)結(jié)構(gòu),當(dāng)哈希桶的數(shù)據(jù)量大于8時(shí),從鏈表轉(zhuǎn)換為紅黑二叉樹(shù),當(dāng)哈希桶中的數(shù)據(jù)量少到6時(shí),從紅黑樹(shù)轉(zhuǎn)換為鏈表。HashMap的初始桶數(shù)量16,散列因子0.75。

          5.ArrayList和Vector的異同
          相同點(diǎn)在于都使用數(shù)組結(jié)構(gòu),增加刪除慢,查找快。不同點(diǎn)在于它們的構(gòu)造方法,ArrayList只能事先確定好集合大小,Vector可以設(shè)置增量,每次數(shù)據(jù)量滿就自動(dòng)擴(kuò)容。

          6.Collection、List、HashMap哪個(gè)是接口?描述下他們的作用?
          Collection是類(lèi)集中最大的操作接口,與此同等地位的是Map,Iterator.
          Collection:單值存取
          Map:雙值存取
          Iterator:獲取數(shù)據(jù)的方法。
          List是接口,與此同等地位的是set接口。兩者區(qū)別在于list中元素允許重復(fù),set不允許。list常用實(shí)現(xiàn)類(lèi):ArrayList和Vector。
          HashMap是Map接口的實(shí)現(xiàn)類(lèi)。



          版權(quán)聲明:本文為博主原創(chuàng)文章,遵循?CC 4.0 BY-SA?版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接和本聲明。

          本文鏈接:

          https://blog.csdn.net/weixin_44063572/article/details/108739380





          ??? ?



          感謝點(diǎn)贊支持下哈?

          瀏覽 55
          點(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>
                  成人免费观看视频亚洲 | 爱爱中文字幕 | 成人在线不卡 | 天天日天天草 | 欧美XXX视频 |