概述
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+100.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
最后
以上就是默默香菇为你收集整理的Collection集合接口及List/Set集合特性及理论的全部内容,希望文章能够帮你解决Collection集合接口及List/Set集合特性及理论所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复