迭代器是个什么器?

Iterable:可迭代的、可遍历的

Collection接口继承了java.lang.Iterable接口,其子类都通过实现Iterator接口中的iterator()方法得到一个Iterator接口实例。Iterator对象称为迭代器(设计模式的一种),主要用于遍历Collection中的元素。

Iterator iterator = list.iterator();//调用list对象的迭代器对象

while (iterator.hasNext()){

         System.out.println(iterator.next()); //next()方法返回的是Object类型的对象

}

·Iterator仅用于遍历集合,其本身并不具备承装对象的能力。

·迭代器相当于对当前的集合状态拍了一个快照,迭代时会根据快照的游标从前到后进行遍历。

·集合对象每一次调用iterator()方法都会得到一个全新的迭代器对象,此迭代器对象的默认游标都在第一个元素之前。

·集合结构(增删改)只要发生改变,此集合的迭代器必须重新进行获取,否则会报错。

·迭代器可以在迭代的过程当中通过迭代器的remove()方法删除底层集合中的元素(会同时更新迭代器和集合中的元素),但是不可以直接调用集合的remove(Object obj)方法删除。

·Map中没有迭代器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值