黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 職業(yè)指南 千道題中精選出的幾道Java集合類面試題

千道題中精選出的幾道Java集合類面試題

更新時(shí)間:2023-01-04 10:00:50 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽1219次

在Java程序員的相關(guān)面試中,面試官必然會(huì)考核一些專業(yè)的技術(shù)知識(shí),其中java集合類面試題是必須要做準(zhǔn)備的,集合的知識(shí)點(diǎn)是Java框架的核心,必然是重要考點(diǎn)之一,所以,熟知并掌握,對(duì)于日后我們的面試與就業(yè)來(lái)說(shuō),幫助非常的大:

java集合類面試題

1. 什么是集合

  • 集合就是一個(gè)放數(shù)據(jù)的容器,準(zhǔn)確的說(shuō)是放數(shù)據(jù)對(duì)象引用的容器
  • 集合類存放的都是對(duì)象的引用,而不是對(duì)象的本身
  • 集合類型主要有3種:set(集)、list(列表)和map(映射)。

2. 集合的特點(diǎn)

集合的特點(diǎn)主要有如下兩點(diǎn):

  • 集合用于存儲(chǔ)對(duì)象的容器,對(duì)象是用來(lái)封裝數(shù)據(jù),對(duì)象多了也需要存儲(chǔ)集中式管理。
  • 和數(shù)組對(duì)比對(duì)象的大小不確定。因?yàn)榧鲜强勺冮L(zhǎng)度的。數(shù)組需要提前定義大小

3. 集合和數(shù)組的區(qū)別

  • 數(shù)組是固定長(zhǎng)度的;集合可變長(zhǎng)度的。
  • 數(shù)組可以存儲(chǔ)基本數(shù)據(jù)類型,也可以存儲(chǔ)引用數(shù)據(jù)類型;集合只能存儲(chǔ)引用數(shù)據(jù)類型。
  • 數(shù)組存儲(chǔ)的元素必須是同一個(gè)數(shù)據(jù)類型;集合存儲(chǔ)的對(duì)象可以是不同數(shù)據(jù)類型。

4. 使用集合框架的好處

容量自增長(zhǎng);

  1. 提供了高性能的數(shù)據(jù)結(jié)構(gòu)和算法,使編碼更輕松,提高了程序速度和質(zhì)量;
  2. 可以方便地?cái)U(kuò)展或改寫(xiě)集合,提高代碼復(fù)用性和可操作性。
  3. 通過(guò)使用JDK自帶的集合類,可以降低代碼維護(hù)和學(xué)習(xí)新API成本。

5. 常用的集合類有哪些?

Map接口和Collection接口是所有集合框架的父接口:

  • Collection接口的子接口包括:Set接口和List接口
  • Map接口的實(shí)現(xiàn)類主要有:HashMap、TreeMap、Hashtable、ConcurrentHashMap以及Properties等
  • Set接口的實(shí)現(xiàn)類主要有:HashSet、TreeSet、LinkedHashSet等
  • List接口的實(shí)現(xiàn)類主要有:ArrayList、LinkedList、Stack以及Vector等

6. List,Set,Map三者的區(qū)別?

Java 容器分為 Collection 和 Map 兩大類,Collection集合的子接口有Set、List、Queue三種子接口。我們比較常用的是Set、List,Map接口不是collection的子接口。

  • Collection集合主要有List和Set兩大接口
  1. List:一個(gè)有序(元素存入集合的順序和取出的順序一致)容器,元素可以重復(fù),可以插入多個(gè)null元素,元素都有索引。常用的實(shí)現(xiàn)類有 ArrayList、LinkedList 和 Vector。
  2. Set:一個(gè)無(wú)序(存入和取出順序有可能不一致)容器,不可以存儲(chǔ)重復(fù)元素,只允許存入一個(gè)null元素,必須保證元素唯一性。Set 接口常用實(shí)現(xiàn)類是 HashSet、LinkedHashSet 以及TreeSet。

Map是一個(gè)鍵值對(duì)集合,存儲(chǔ)鍵、值和之間的映射。 Key無(wú)序,唯一;value 不要求有序,允許重復(fù)。Map沒(méi)有繼承于Collection接口,從Map集合中檢索元素時(shí),只要給出鍵對(duì)象,就會(huì)返回對(duì)應(yīng)的值對(duì)象。

  1. Map 的常用實(shí)現(xiàn)類:HashMap、TreeMap、HashTable、LinkedHashMap、ConcurrentHashMap

7. 哪些集合類是線程安全的?

Vector:就比Arraylist多了個(gè) synchronized (線程安全),因?yàn)樾瘦^低,現(xiàn)在已經(jīng)不太建議使用。

hashTable:就比hashMap多了個(gè)synchronized (線程安全),不建議使用。

ConcurrentHashMap:是Java5中支持高并發(fā)、高吞吐量的線程安全HashMap實(shí)現(xiàn)。它由Segment數(shù)組結(jié)構(gòu)和HashEntry數(shù)組結(jié)構(gòu)組成。Segment數(shù)組在ConcurrentHashMap里扮演鎖的角色,HashEntry則用于存儲(chǔ)鍵-值對(duì)數(shù)據(jù)。一個(gè)ConcurrentHashMap里包含一個(gè)Segment數(shù)組,Segment的結(jié)構(gòu)和HashMap類似,是一種數(shù)組和鏈表結(jié)構(gòu);一個(gè)Segment里包含一個(gè)HashEntry數(shù)組,每個(gè)HashEntry是一個(gè)鏈表結(jié)構(gòu)的元素;每個(gè)Segment守護(hù)著一個(gè)HashEntry數(shù)組里的元素,當(dāng)對(duì)HashEntry數(shù)組的數(shù)據(jù)進(jìn)行修改時(shí),必須首先獲得它對(duì)應(yīng)的Segment鎖。(推薦使用)

8. Java集合的快速失敗機(jī)制 “fail-fast”?

是java集合的一種錯(cuò)誤檢測(cè)機(jī)制,當(dāng)多個(gè)線程對(duì)集合進(jìn)行結(jié)構(gòu)上的改變的操作時(shí),有可能會(huì)產(chǎn)生fail-fast 機(jī)制。

例如:假設(shè)存在兩個(gè)線程(線程1、線程2),線程1通過(guò)Iterator在遍歷集合A中的元素,在某個(gè)時(shí)候線程2修改了集合A的結(jié)構(gòu)(是結(jié)構(gòu)上面的修改,而不是簡(jiǎn)單的修改集合元素的內(nèi)容),那么這個(gè)時(shí)候程序就會(huì)拋出 ConcurrentModificationException 異常,從而產(chǎn)生fail-fast機(jī)制。

原因:迭代器在遍歷時(shí)直接訪問(wèn)集合中的內(nèi)容,并且在遍歷過(guò)程中使用一個(gè) modCount 變量。集合在被遍歷期間如果內(nèi)容發(fā)生變化,就會(huì)改變modCount的值。每當(dāng)?shù)魇褂胔ashNext()/next()

遍歷下一個(gè)元素之前,都會(huì)檢測(cè)modCount變量是否為expectedmodCount值,是的話就返回遍歷;否則拋出異常,終止遍歷。

解決辦法:

在遍歷過(guò)程中,所有涉及到改變modCount值得地方全部加上synchronized。使用CopyOnWriteArrayList來(lái)替換ArrayList

以上就是“千道題中精選出的幾道Java集合類面試題”,你能回答上來(lái)嗎?如果想要了解更多的Java面試題相關(guān)內(nèi)容,可以關(guān)注動(dòng)力節(jié)點(diǎn)Java官網(wǎng)。

提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 曰本三级香港三级三级人 | 在线观看成人免费视频播放 | 午夜影院污网页入口 | 中文字幕在线观看一区二区 | 91免费永久国产在线观看 | 国产精品单位女同事在线 | 狠狠操人人 | 日韩字幕| 黄片a级毛片| 在线播放国产麻豆 | 亚洲欧美人成人综合在线50p | 国产美女一级ba大片免色 | 极品美女丝袜被的网站 | 一级特级女人18毛片免费视频 | 日本jizz强视频69视频 | 成年女人免费又黄又爽视频 | 久久九九色 | 国产成人精品免费2021 | 天天艹日日干 | 91精品久久久久久久久中文字幕 | 久久综合狠狠综合久久 | 欧美视频一区 | 国产资源在线视频 | 婷婷综合色 | 草草视频在线观看 | 天天综合天天 | 国产亚洲新品一区二区 | 玖玖国产| 91视频免费网站 | 欧美日韩在线不卡 | 香港三级日本三级三级人妇99 | 日本欧美一区二区三区 | 日韩区在线观看 | 天天看天天摸 | 免费国产a国产片高清 | 中文字幕2019年中文字幕 | 中文字幕激情视频 | 啪啪综合网 | 色黄大片女爽一次 | 欧美另类tv | 天天摸夜夜添夜夜添国产 |