- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
java集合必会面试题目及答案
一、单项选择题(每题2分,共10题)
1.以下哪个是Java中的无序集合?
A.ListB.SetC.Map
答案:B
2.HashSet底层使用的数据结构是?
A.数组B.链表C.哈希表
答案:C
3.ArrayList扩容时新容量是旧容量的?
A.1倍B.1.5倍C.2倍
答案:B
4.Map接口的实现类中,键值对有序的是?
A.HashMapB.TreeMapC.Hashtable
答案:B
5.以下能直接存储基本数据类型的集合是?
A.ArrayListB.VectorC.都不能
答案:C
6.LinkedList插入元素效率高是因为它是?
A.基于数组B.基于链表C.基于哈希表
答案:B
7.哪个集合类线程安全?
A.ArrayListB.HashMapC.Vector
答案:C
8.TreeSet对元素排序依据是?
A.插入顺序B.自然顺序C.随机顺序
答案:B
9.遍历HashMap推荐使用哪种方式?
A.keySet()B.entrySet()C.values()
答案:B
10.以下不属于Collection接口子接口的是?
A.ListB.MapC.Set
答案:B
二、多项选择题(每题2分,共10题)
1.以下属于List接口实现类的有?
A.ArrayListB.LinkedListC.Vector
答案:ABC
2.关于Set接口说法正确的有?
A.元素无序B.元素不可重复C.可以包含null
答案:ABC
3.以下哪些类实现了Map接口?
A.HashMapB.TreeMapC.WeakHashMap
答案:ABC
4.以下哪些方法是Collection接口的方法?
A.add()B.remove()C.size()
答案:ABC
5.ArrayList相对于数组的优势有?
A.动态扩容B.随机访问快C.插入删除方便
答案:AC
6.HashSet特点有?
A.基于哈希表B.允许null值C.元素有序
答案:AB
7.以下哪些操作会导致HashMap扩容?
A.插入元素B.元素数量达到阈值C.调用clear()
答案:AB
8.TreeMap可以对键进行排序,支持的排序方式有?
A.自然排序B.自定义排序C.随机排序
答案:AB
9.以下哪些是线程安全的集合类?
A.HashtableB.ConcurrentHashMapC.CopyOnWriteArrayList
答案:ABC
10.以下能用于遍历Map的方式有?
A.迭代器遍历entrySetB.增强for遍历keySetC.流遍历values
答案:ABC
三、判断题(每题2分,共10题)
1.ArrayList中元素存储是有序的。()
答案:对
2.HashSet中的元素可以重复。()
答案:错
3.HashMap是线程安全的。()
答案:错
4.LinkedList适合频繁插入和删除操作。()
答案:对
5.TreeSet中元素默认按自然顺序排序。()
答案:对
6.Vector和ArrayList性能一样。()
答案:错
7.Map接口中键可以重复。()
答案:错
8.CopyOnWriteArrayList在写入时会复制数组。()
答案:对
9.HashSet允许存储多个null值。()
答案:错
10.LinkedHashMap能保证元素插入顺序。()
答案:对
四、简答题(每题5分,共4题)
1.简述ArrayList和LinkedList的区别。
答案:ArrayList基于数组,随机访问快,插入删除慢;LinkedList基于链表,插入删除快,随机访问慢。ArrayList内存连续,LinkedList内存离散。
2.说说HashMap的工作原理。
答案:HashMap基于哈希表,通过key的hashCode()计算桶位置。当有新键值对插入,先计算桶索引,若桶为空直接插入;若不为空,遍历链表或红黑树找到合适位置插入,冲突时根据equals方法判断是否覆盖。
3.如何保证HashSet中元素的唯一性?
答案:HashSet
文档评论(0)