ListIterator和Iterator

Iterator简介:

Java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代 ArrayList 和 HashSet 等集合。

LIstIterator简介:

LIstIterator是一个更加强大的Iterator的子类型,它只能用于各种List类的访问
在这里插入图片描述

Iterator中的常用方法:

hasNext():boolean如果迭代器指向位置后面还有元素,则返回 true,否则返回false

next():E返回集合中Iterator指向位置后面的元素

remove():void删除集合中Iterator指向位置后面的元素

LIstIterator中的常用方法:

hasNext():boolean正向遍历list,如果迭代器后面还有元素,则返回 true,否则返回false

next():E返回list中迭代器指向位置后面的元素

hasPrevious():boolean逆向遍历list,如果迭代器前面还有元素,则返回 true,否则返回false

previous():E返回list中迭代器指向位置前面的元素

nextIndex():int返回list中迭代器位置后面元素的索引

previousIndex():int返回list中迭代器位置前面元素的索引

remove():void从list中删除next()或previous()返回的元素

set(E e):void从list中将next()或previous()返回的元素更改为指定元素e

add(E e):void将指定的元素插入list,插入位置为迭代器当前位置

异同:

1.相同点

都是迭代器,都可以遍历集合中的元素。

2.区别

  • 使用范围不同:Iterator能遍历set、list集合,而ListIterator只能遍历list集合。

  • 遍历顺序有区别:ListIterator和Iterator都有hasNext()和next()方法,可以实现顺序向后遍历,但是ListIterator有hasPrevious()和previous()方法,可以实现逆向(顺序向前)遍历。Iterator就不可以。

  • 是否能定位当前索引位置:ListIterator可以定位当前的索引位置,nextIndex()和previousIndex()可以实现。Iterator没有此功能。

  • 是否能修改对象:都可实现删除对象,但是ListIterator可以实现对象的修改,set()方法可以实现。Iierator仅能遍历,不能修改。

  • 是否能添加对象:ListIterator有add()方法,可以向List中添加对象,而Iterator不能。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值