文章目录
写在前面
一、Collection(集合)
集合类体系结构
Collection集合概述和使用
Collection集合常用方法
Collection集合的遍历
二、List
List集合的概述和特点
List集合的特有方法
并发修改异常
ListIterator
增强for循环
常见数据结构之栈
常见数据结构之队列
常见数据结构之数组
常见数据结构之链表
List集合子类特点
LinkedList集合的特有功能
一、Collection(集合)
集合类体系结构
单列集合:Collection
可重复:List
ArrayList
LinkList
不可重复:Set
双列集合:Map
Collection集合概述和使用
Collection集合概述
是单例集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素
JDK不提供此接口的任何直接实现,它提供更具体的子接口(如Set和List)实现
创建Collection集合的对象
多态的方式
具体的实现类ArrayList
Collection集合常用方法
Collection集合的遍历
lterator:迭代器,集合的专用遍历方式
Iterator< E > iterator:返回此集合中元素的迭代器,通过集合的iterator()方法得到
迭代器是通过集合的iterator()方法得到的,所以我们说它是依赖于集合而存在的
lterator中的常用方法
E next():返回迭代中的下一个元素
boolean hasNext():如果迭代具有更多元素,则返回true
二、List
List集合的概述和特点
LIst集合概述
有序集合(也称为序列),用户可以精确控制列表中每个元素的插入位置。用户可以通过整数索引访问元素,并搜索列表中的元素
与Set集合不同,列表通常允许重复的元素
List集合特点
有序:存储和取出的元素顺序一致
可重复:存储的元素可以重复
List集合的特有方法
List<String> list = Arrays.asList("a","b","c");
注意:
(1)该方法适用于对象型数据的数组(String、Integer...)
(2)该方法不建议使用于基本数据类型的数组(byte,short,int,long,float,double,boolean)
(3)该方法将数组与List列表链接起来:当更新其一个时,另一个自动更新
(4)不支持add()、remove()、clear()等方法
用此方法得到的List的长度是不可改变的
补充一个List集合转数组
并发修改异常
ConcurrentModificationException
产生原因
迭代器遍历的过程中,通过集合对象修改了集合中元素的长度,造成了迭代器获取元素中判断预期修改值和实际修改值不一致
ListIterator
Listlterator:列表迭代器
增强for循环
增强for:简化数组和Collection集合的遍历
实现lterable接口的类允许其对象成为增强型for语句的目标
它是JDK5之后出现的,其内部原理是一个lterator迭代器
增强for的格式
格式:
常见数据结构之栈
栈是一种先进后出的模型