小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

20個(gè)最佳的Java集合框架面試題目

 LZS2851 2015-11-12

譯者:荔枝殼

原文鏈接:http://www./2015/07/collections-interview-questions-java.html

小象科技原創(chuàng)作品,歡迎大家瘋狂轉(zhuǎn)發(fā);

機(jī)構(gòu)、自媒體平臺(tái)轉(zhuǎn)載務(wù)必至后臺(tái)留言,申請版權(quán)。


1
為什么Map接口不繼承Collection 接口?

· Set是無序集合,并且不允許重復(fù)的元素

· List是有序的集合,并且允許重復(fù)的元素

· 而Map是鍵值對

· 它被視為是鍵的set和值的set的組合

· Map被設(shè)計(jì)為鍵值對的集合,所以不需要繼承Collection 接口


2
HashMap和Hashtable之間的區(qū)別?

· 同步或線程安全

· Null鍵和Null

· 迭代值

· 默認(rèn)容量大小


3
comparable 和 comparator的不同之處?

· comparable接口實(shí)際上是出自java.lang

· 它有一個(gè) compareTo(Object obj)方法來將objects排序

· comparator接口實(shí)際上是出自 java.util

· 它有一個(gè)compare(Object obj1, Object obj2)方法來將objects排序


4
如何對Object的list排序?

· 對objects數(shù)組進(jìn)行排序,我們可以用Arrays.sort()方法

· 如果要對objects的集合進(jìn)行排序,需要使用Collections.sort()方法


5
fail-fast 與 fail-safe 之間的區(qū)別?

· Fail fast快速地報(bào)告任何的failure。無論何時(shí)任何一個(gè)問題都會(huì)引發(fā) fail fast系統(tǒng)fails

· 在Java Fail fast 迭代器中,迭代objects集合有時(shí)會(huì)出現(xiàn)并發(fā)修改異常,出現(xiàn)這種情況有2個(gè)原因

· 如果一個(gè)線程正在迭代一個(gè)集合,而另一個(gè)線程同時(shí)試圖修改這個(gè)集合

· 在調(diào)用remove()方法后,如何我們還試圖去修改集合object


6
Iterator、ListIterator 和 Enumeration的區(qū)別?

· Enumeration接口在Java1.2版本開始有,所以Enumeration是合法規(guī)范的接口

· Enumeration使用elements()方法

· Iterator對所有Java集合類都有實(shí)現(xiàn)

· Iterator使用iterator方法

· Iterator只能往一個(gè)方向前進(jìn)

· ListIterator僅僅對List類型的類實(shí)現(xiàn)了

· ListIterator使用listIterator()方法


7
Java 中 Set 與 List 有什么不同?

· Set是一個(gè)不允許重復(fù)元素存在的集合

· Set沒有索引

· Set僅僅允許一個(gè)null

· Set有類:HashSet、LinkedHashMapTreeSet

· List有索引

· List允許N個(gè)null

· List可以按插入順序顯示

· List有類:Vector、ArrayListLinkedList


8
arraylist 與 vector 的區(qū)別?

· Vector Java的第一個(gè)版本就引入了,也就是說vector是一個(gè)合法規(guī)范的類

· ArrayListJava1.2版本引入的,是Java 集合框架的組成部分

· Vector是同步的

· ArrayList是不同步的


9
什么類實(shí)現(xiàn)了List接口?

· ArrayList

· LinkedList

· Vector


10
什么類實(shí)現(xiàn)了Set接口?

· HashSet

· LinkedHashSet

· TreeSet


11
如何保證一個(gè)集合線程安全?

· Vector, Hashtable, Properties Stack 都是同步的類,所以它們都線程安全的,可以被使用在多線程環(huán)境中

· 使用Collections.synchronizedList(list)) 方法,可以保證list類是線程安全的

· 使用java.util.Collections.synchronizedSet()方法可以保證set類是線程安全的


12
是否可以往 TreeSet 或者 HashSet 中添加 null 元素?

· 可以往 hashset 中添加一個(gè) null

· TreeSet 也允許一個(gè) null


13
解釋下Collection的接口繼承關(guān)系?


14
Iterator符合哪個(gè)設(shè)計(jì)模式?

· Iterator 設(shè)計(jì)模式


15
HashSet 實(shí)現(xiàn)了哪個(gè)數(shù)據(jù)結(jié)構(gòu)?

· HashSet 內(nèi)部實(shí)現(xiàn)了hashmap


16
為什么 Collection 不能繼承 Cloneable 和 Serializable?

· ListSet唯一繼承 Collection 接口

· SortedMap 繼承了 Map 接口


17
hashCode() 和 equals() 方法的重要性?如何在Java中使用它們?

· hashCode() equals() 方法定義在'object'類中

· 如果equals() 方法在比較2個(gè)對象時(shí)返回true,那么hashCode()的返回值必須得一樣


18
array 和 arraylist 的區(qū)別?

· Array類似object集合類型,大小固定

· Arraylist是同質(zhì)和異質(zhì)元素的集合


19
什么是 Properties 類?

· Properties Hashtable的子類。它被用于維護(hù)值的list,其中它們的鍵、值都是String類型


20
如何將一個(gè)字符串轉(zhuǎn)換為arraylist?

· 使用 arrayList.toArray() 方法



參與本文討論請猛戳“閱讀原文”

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多