常见集合的特点

ArrayList 的特点:
1 底层数据结构是数组
2 增加和删除的效率低,查询和修改的效率高
3 能够存储null 值
4 线程不安全,效率高
5 有索引,能够方便检索
6 元素可重复,我们自己可以通过 选择排序去重复
7 不可以排序,但是可以通过Collection.sort() 方法排序

Vector 的特点:
Vector 是老版本的 ArrayList ,唯一区别就是Vector是线程安全的

接口Deque:
实现类ArrayDeque:基于数组的双端队列
具备数组的特点;队列的功能,对端队列的功能,栈结构的功能
适用于大量查询修改操作
实现类LinkedList:基于链表的双端队列
具备链表的特点;队列的功能,对端队列的功能,栈结构的功能
适用于大量增加,删除

Set 接口的特点:
实现类:HashSet:基于哈希表结构
1 存储无序,因为对象的hashCode 值和哈希表存储的索引有关,hashCode是相对随机,所以无序
2 唯一,去重复 依赖于 hashCode 和equals 方法
3 可以存储 null ,但是 null 不能重复
实现类:treeSet:基于二叉树的结构
去重复,依赖于二叉树的存储特点,排序依赖于二叉树的取特点
有自然排序和比较器排序
实现类:LinkedHashSet :基于链表和哈希表
1 有序的,链表保证有序
2 唯一,哈希表保证唯一

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值