Collction的三种遍历

目录

集合体系结构

迭代器遍历:

增强for遍历:

Lambda表达式遍历


集合体系结构

List 系列集合 : 添加元素是有序的、可重复的,有索引的;

有序的:存和取的顺序是一样的;

Set 系列集合 : 添加元素是无序的、不重复,无索引;

无序的:存和取的顺序可能是不一样的;

Collection 是单列集合的祖宗接口,它的功能是全部单列集合都可以继承使用的

注意点 : Collection是一个接口

所以说,我们学习它的方法时,只能创建他的实现类对象

实现类:ArrayList

判断元素是否包含

底层是依赖equals方法进行判断对象是否存在的

如果时自定义对象,没有重写equals方法,那么默认使用Object类中的equals方法进行判断,而Object类中equals方法,依赖地址值进行判断,而我们想要比的是属性,因此需要重写equals方法

(快捷键 alt + insert)具体快捷键根据自己的设置

Collction的遍历方式(通用)

迭代器遍历:

不依赖索引

迭代器在Java中的类是Iterator,迭代器是集合专用的遍历方式

细节注意;

1.如果当前位置没有元素,还要强行获取,会报错NoSuchElementException

2.迭代器遍历完毕,指针不会复位(如果要再次历遍集合,只能再获取一个新的迭代器对象)

3.循环中只能用一次next方法

4.迭代器遍历,不能用集合的方法进行增加或删除(如果实在要删除可用迭代器提供的remove方法删除,添加暂时没有办法)

增强for遍历:

增强for的底层就是迭代器,为了简化迭代器的代码书写的。
它是JDK5之后出现的,其内部原理就是一个Iterator迭代器
所有的单列集合和数组才能用增强for进行遍历。


格式: 
for(元素的数据类型  变量名:  数组或者集合){

}

细节注意; 修改增强for中的变量,不会改变集合中原本的数据

Lambda表达式遍历

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值