Collection集合接口及List/Set集合特性及理论

Collection 接口

  • 是集合框架的顶级接口
  • 是Set和List的父接口
  • 但不是Map的父接口

List接口

1.特点:有序、对象可重复

2.遍历方式
2.1 下标
2.2 foreach (>=jdk1.5)
2.3 迭代器Iterator (原理)
2.3.1 读取下一个记录
A.hasNext() 是否存在下一个记录
B.Next() 取值

	2.3.2 读取上一个记录(ListIterator)		
			A.hasPrevious()	是否存在上一个记录
			B.Previous()	取值

3.List优化
初始容量10,负载因子0.5,
公式:容量大小+初始容量0.5
指定初始容量:List list=new ArrayList(3)
例子:10+10
0.5=15 , 15+10*0.5=20
(0.5个倍的增长因子数)

4.List元素删除
Vector:增删改查都慢
LlinkedList:以链表结构存储数据,查询慢、增删快
ArrayList:连续数据空间存储数据,查询快(下标),增删慢

5.泛型
JDK1.5之后才有的
以类型作为参数的类就叫泛型
例如:List list=new ArrayList()/ 这个就泛型/
作用:提高健壮性,简化代码。(泛型的默认值是Object)

6.装箱、拆箱(jdk1.5>需要手动装,jdk1.5<=jdk自动装拆)
装箱:值类型 >> 引用类型
拆箱:引用类型 >> 值类型
例如:
List list=new ArrayList();
list.add(new Integer(1));//装箱
int z=list.get(1).intValue();//拆箱
7.Set集合
1 特点:无序、对象不能重复(equals)
2 遍历
1.1 foreach
1.2 迭代器(Iterator/ListIterator)
1.2.1
1.3 加强版foreach(只限于1.8jdk)
3 常用实现类
HashSet
TreeSet:根据某种(规则)对里面的元素进行排序
自然比较接口:java.lang.Comparable
比较器:java.util.Comparator
String以Ascll码进行比较,返回差值

8.LinkedHashSet
1.元素是有序的
2.元素是不重复的
3.底层数据结构是按照链表的结构存储的 Linked
hashCode
队列 Queue:表示一个先入先出的数据结构(自行研究)
堆栈 Stack:表示一个先进后出的数据结构
压:push
弹:pop

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值