五道Java集合面試題,看看你會不會

五道Java集合面試題,看看你會不會

天津卓眾教育      2022-04-23 07:42:01     23

五道Java集合面試題,看看你會不會,1.Java集合框架是什么?說出一些集合框架的優(yōu)點(diǎn)?每種編程語言中都有集合,最初的Java版本包含幾種集合類:Vector、Stack、HashT

課程價(jià)格 請咨詢

上課時(shí)段: 授課校區(qū):

詳細(xì)介紹


    1.Java集合框架是什么?說出一些集合框架的優(yōu)點(diǎn)?


    每種編程語言中都有集合,最初的Java版本包含幾種集合類:Vector、Stack、HashTable和Array。隨著集合的廣泛使用,Java1.2提出了囊括所有集合接口、實(shí)現(xiàn)和算法的集合框架。在保證線程安全的情況下使用泛型和并發(fā)集合類,Java已經(jīng)經(jīng)歷了很久。它還包括在Java并發(fā)包中,阻塞接口以及它們的實(shí)現(xiàn)。


    集合框架的部分優(yōu)點(diǎn)如下:


    (1)使用核心集合類降低開發(fā)成本,而非實(shí)現(xiàn)我們自己的集合類。


    (2)隨著使用經(jīng)過嚴(yán)格測試的集合框架類,代碼質(zhì)量會得到提高。


    (3)通過使用JDK附帶的集合類,可以降低代碼維護(hù)成本。


    (4)復(fù)用性和可操作性。


    2.Java集合框架的基礎(chǔ)接口有哪些?


    Collection為集合層級的根接口。一個(gè)集合代表一組對象,這些對象即為它的元素。Java平臺不提供這個(gè)接口任何直接的實(shí)現(xiàn)。


    Set是一個(gè)不能包含重復(fù)元素的集合。這個(gè)接口對數(shù)學(xué)集合抽象進(jìn)行建模,被用來代表集合,就如一副牌。


    List是一個(gè)有序集合,可以包含重復(fù)元素。你可以通過它的索引來訪問任何元素。List更像長度動(dòng)態(tài)變換的數(shù)組。


    Map是一個(gè)將key映射到value的對象.一個(gè)Map不能包含重復(fù)的key:每個(gè)key最多只能映射一個(gè)value。


    一些其它的接口有Queue、Dequeue、SortedSet、SortedMap和ListIterator。


    3.為何Map接口不繼承Collection接口?


    盡管Map接口和它的實(shí)現(xiàn)也是集合框架的一部分,但Map不是集合,集合也不是Map。因此,Map繼承Collection毫無意義,反之亦然。


    如果Map繼承Collection接口,那么元素去哪兒?Map包含key-value對,它提供抽取key或value列表集合的方法,但是它不適合“一組對象”規(guī)范。


    4.Enumeration和Iterator接口的區(qū)別?


    Enumeration的速度是Iterator的兩倍,也使用更少的內(nèi)存。Enumeration是非?;A(chǔ)的,也滿足了基礎(chǔ)的需要。但是,與Enumeration相比,Iterator更加安全,因?yàn)楫?dāng)一個(gè)集合正在被遍歷的時(shí)候,它會阻止其它線程去修改集合。


    迭代器取代了Java集合框架中的Enumeration。迭代器允許調(diào)用者從集合中移除元素,而Enumeration不能做到。為了使它的功能更加清晰,迭代器方法名已經(jīng)經(jīng)過改善。


    5.Iterater和ListIterator之間有什么區(qū)別?


    (1)我們可以使用Iterator來遍歷Set和List集合,而ListIterator只能遍歷List。


    (2)Iterator只可以向前遍歷,而LIstIterator可以雙向遍歷。


    (3)ListIterator從Iterator接口繼承,然后添加了一些額外的功能,比如添加一個(gè)元素、替換一個(gè)元素、獲取前面或后面元素的索引位置。



 以上就是天津卓眾教育java培訓(xùn)機(jī)構(gòu)的小編針對“五道Java集合面試題,看看你會不會”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。


Java面試題

培訓(xùn)啦提醒您:交易時(shí)請核實(shí)對方資質(zhì),對于過大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險(xiǎn),謹(jǐn)防上當(dāng)。