集合的应用

集合可以理解为 有序 无序 排序 三种
有序  插入的顺序 即为遍历时的顺序
无序  遍历时的顺序无法确定
排序 插入后进行排序

常见的集合有些那
Collcetion和Map是所有集合的父接口
1.Collcetion接口实现类:Set和List
Set 接口主要实现类有 HashSet TreeSet LinkedHashSet
List接口主要实现类有 ArrayList LinkedList Stack Vcetor
2.Map接口主要实现类有 HashMap HashTable TreeMap ConcurrentHashMap Properties等

Set和List:
List 和 Set 是储存单列的数据集合,都继承与Collcetion;
List 中存储的数据是有序的,保证了输出元素的顺序就是插入元素的顺序,可以插入多个null值元素,可以重复
Set 中存储的数据是无序的,无法保证元素的储存顺序,可以插入一个null值元素 ,不可以重复

ArrayList 特点:底层数据结构为数组,查询块,增删慢,线程不安全,效率高
LinkedList特点: 底层数据结构为链表,查询慢,增删块,线程不安全
vector,特点:底层数据结构为数组,查询块,增删慢,线程安全,效率低

HashSet特点:为了快速查找设置的set  依赖与 hashCode()和equals()方法保证元素的唯一性
TreeSet 特点: : 底层为树结构,保证元素处于排序状态,元素必须实现Comparable接口
LinkedHash特点:底层为链表结构,插入顺序即为遍历顺序

Map:

HashTbal特点:继承自Dictionary 是线程安全的 key和value 都不允许为null,不指定容量的情况下,默认容量为11,扩容时,将容量变为原来的2倍加1
HashMap特点:基于散列表实现,线程不安全,遍历顺序,取得 键值对 的开销是固定改的,可以通过构造器设置容量和负载因子,控制容器的性能。默认容量为16,扩容时将容量变为原来的2倍 如果想让HashMap 加锁  Map  m=Conllections.synchronizedMap(new HashMap()); 
LinkedHashMap特点:类似HashMap 遍历顺序 取得" 键值对"为插入顺序,或是最少使用的(LRU)次序,比HashMap慢一点。而在迭代访问时更快,因为他使用链表维护内部次序。
TreeMap特点 是SortedMap现阶段唯一实现,基于红黑树实现,查看“键"或者"键值"对时,他们会被排序(次序由,Comparable 和 Comparator决定),TreeMap的特点在于,所得到的结果是经过排序
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值