java集合list,set,map

collection是最顶级的集合接口
1,list 有序可重复的 值:基本数据类型和引用类型
1.1 arraylist 线程非安全
1.2 vector 线程安全
1.1和1.2 都是基于数组实现的,查询快,但是增删改 慢
1.3 linkedlist 底层是双向链表
链表分为 双向链表和单向链表 增删改快,但是查询慢
2,set 无序不重复 值:基本数据类型和引用类型
HashSet
TreeSet 排序
LinkedHashSet LinkedHashSet保证了怎么存,怎么取,保证了唯一性
3,map 键:值
treemap
HashMap 线程非安全
hashtable 线程安全但是性能差,把map整个集合都锁定了
ConcurrentHashMap 线程安全,比hashtable性能好,分段 锁,对Map的每一个数组就是一个个段锁住,而不是锁住全部

1,

arraylist不安全而vector安全的原因
因为Vector的方法前加了,synchronized 关键字,也就是同步的意思,sun公司希望Vector是线程安全的,而希望arraylist是高效的。

注意 linkedlist可以形成栈的数据特性 先进后出

在这里插入图片描述

这是输出

121s
1
2.1
-----------------------------
2.1
1
121s

2,set

遍历必须通过迭代器
在这里插入图片描述
过滤list的方式
在这里插入图片描述
treeset与treemap一样,一定要能排序,如果是不能排序的类型会报错,需要继承compareable,定义排序方式
在这里插入图片描述

3, map

1,map的几种遍历方式
(1),keysets

在这里插入图片描述

(2)迭代器
在这里插入图片描述
(3)entryset
如下图
2,treemap会自动排序,给出的key一定要是可排序的,否则会报出异常,如果是Javabeans类型,要实现compareable接口,给出排序方法
在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值