集合面试题总结

1.https://thinkwon.blog.youkuaiyun.com/article/details/104588551
2.https://www.cnblogs.com/iwenwen/p/11052689.html
3.https://blog.51cto.com/u_14989534/2547134

集合之间对比总结

List

有序列表,元素允许重复,可以插入多个null元素

ArrayListLinkedListVector
底层数据结构数组双向链表数组
是否线程安全非线程安全非线程安全线程安全
顺序有序有序有序
null允许重复,可存多个null允许重复,可存多个null允许重复,可存多个null
特点检索效率高,增删效率低检索效率低,增删效率高检索效率高,增删效率低。
线程安全,效率比ArrayList低
初始化长度初始化为空,第一次扩容为10-10
扩容1.5倍扩容-2倍扩容

Set

无序列表,元素不可重复,只能存入一个null元素

HashSetLinkedHashSet TreeSet
底层数据结构HashMapLinkedHashMap红黑树
是否线程安全非线程安全非线程安全非线程安全
顺序无序有序,元素添加顺序有序
null不允许重复,可存一个null不允许重复,可存一个null不允许重复,不能存null
初始化长度16--
扩容2倍扩容--

Map

提供了一组键值的映射,关键字应该是唯一的,每个key 只能映射一个value

HashMapLinkedHashMapHashTableTreeMap
底层数据结构数组,链表,红黑树数组,链表,红黑树数组,链表红黑树
是否线程安全非线程安全非线程安全线程安全非线程安全
顺序无序有序,元素添加顺序无序有序
nullk可以是null,v可重复k可以是null,v可重复k不可是null,v可重复k默认不可是null,实现定制比较器,避免空指针异常就可以强制存null
初始化长度16-11-
扩容2倍扩容-2倍扩容+1-
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值