什么是集合?集合和數(shù)組的區(qū)別是什么?你能準(zhǔn)確解釋集合框架底層數(shù)據(jù)結(jié)構(gòu)嗎?
Java集合容器
1 集合容器概述
什么是集合
集合的特點(diǎn)
集合和數(shù)組的區(qū)別
使用集合框架的好處
常用的集合類有哪些?
List,Set,Map三者的區(qū)別?List、Set、Map 是否繼承自Collection接口?List、Map、Set三個接口存取元素時,各有什么特點(diǎn)?
集合框架底層數(shù)據(jù)結(jié)構(gòu)
哪些集合類是線程安全的?
Java集合的快速失敗機(jī)制 “fail-fast”?
怎么確保一個集合不能被修改?
2 List接口
迭代器Iterator是什么?
Iterator怎么使用?有什么特點(diǎn)?
如何邊遍歷邊移除Collection中的元素?
Iterator和ListIterator有什么區(qū)別?
遍歷一個List有哪些不同的方式?每種方法的實(shí)現(xiàn)原理是什么?Java中List遍歷的最佳實(shí)踐是什么?
說一下ArrayList的優(yōu)缺點(diǎn)
如何實(shí)現(xiàn)數(shù)組和List之間的轉(zhuǎn)換?
ArrayList和LinkedList的區(qū)別是什么?
ArrayList和Vector的區(qū)別是什么?
插入數(shù)據(jù)時,ArrayList、LinkedList、Vector誰速度較快?闡述ArrayList、Vector、LinkedList的存儲性能和特性?
多線程場景下如何使用ArrayList?
為什么ArrayList的elementData加上transient修飾?
List和Set的區(qū)別
3 Set接口
說一下HashSet的實(shí)現(xiàn)原理?
HashSet如何檢查重復(fù)?HashSet是如何保證數(shù)據(jù)不可重復(fù)的?
HashSet與HashMap的區(qū)別
Queue
BlockingQueue是什么?
在Queue中poll()和remove()有什么區(qū)別?
4 Map接口
說一下 HashMap 的實(shí)現(xiàn)原理?
HashMap在JDK1.7和JDK1.8中有哪些不同?HashMap的底層實(shí)現(xiàn)
(責(zé)任編輯:代碼如詩) |