框架集合总结

集合类的由来:
对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定。就使用集合容器进行存储。

集合特点:
1,用于存储对象的容器。

2,集合的长度是可变的。

3,集合中不可以存储基本数据类型值。


集合容器因为内部的数据结构不同,有多种具体容器。不断的向上抽取,就形成了集合框架。


Collection接口:

List:有序(存入和取出的顺序一致),元素都有索引(角标),元素可以重复。

ArrayList:内部是数组数据结构,是不同步的。替代了Vector。查询的速度快。

LinkedList:内部是链表数据结构,是不同步的。增删元素的速度很快。

Set:元素不能重复,无序。

HashSet: 内部数据结构是哈希表 ,是不同步的。

TreeSet:可以对Set集合中的元素进行排序。是不同步的。



Map接口:
 

HashMap:部结构是哈希表,不是同步的。允许null作为键,null作为值。

TreeMap : 内部结构是二叉树,不是同步的。可以对Map集合中的键进行排序。 


collection与map的区别:

1、Map一次添加一对元素。Collection 一次添加一个元素。

2、Map也称为双列集合,Collection集合称为单列集合。


如何记录每一个容器的结构和所属体系呢?

那就是看名字,如下:
List
ArrayList

LinkedList


Set
HashSet

TreeSet

后缀名就是该集合所属的体系。
前缀名就是该集合的数据结构。

怎么判断什么时候用哪种集合呢?

首先要判断是否需要唯一:

需要:Set,不需要:List

如果要用Set,再判断是否需要制定顺序: 
需要: TreeSet

不需要:HashSet

但是想要一个和存储一致的顺序(有序):LinkedHashSet

如果用List再判断是否需要频繁增删

需要:LinkedList

不需要:ArrayList

看到array:就要想到数组,就要想到查询快,有角标.

看到link:就要想到链表,就要想到增删快,就要想要 add get remove+frist last的方法 

看到hash:要想到哈希表,就要想到唯一性,就要想到元素需要覆盖hashcode方法和equals方法。 

看到tree:就要想到二叉树,就要想要排序,就要想到两个接口Comparable,Comparator 。


而且通常这些常用的集合容器都是不同步的。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值