千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  >  Iterator和ListIterator区别

Iterator和ListIterator区别

来源:千锋教育
发布人:qyf
时间: 2022-06-07 15:03:00 1654585380

java11

  Iterator和ListIterator是Java三个游标中的两个,都是由Java.UTIL包中的集合框架定义的。那么它们之间有什么区别?下面我来介绍Iterator和ListIterator之间的区别。

  Iterator是什么?

  Iterator代表迭代器,是Collection框架中的一个接口;用于遍历集合元素。它允许逐个迭代集合中的每个元素,从集合中获取元素或从集合中删除元素;但无法使用Iterator修改集合中的任何元素。

  Iterator有一个iterator()方法,它会将迭代器返回到集合的开头。一旦得到一个集合开头的迭代器,然后遍历集合中的元素,就建立一个循环,每次循环迭代时调用hasNext()。

  hasNext()如果返回true,则表示集合中存在下一个元素;如果返回false,则表示遍历所有元素。然后在循环内部,可以使用next()获取集合中的每个元素。next()方法返回集合的下一个元素。

  缺点:

  使用Iterator,就只能向前移动集合。

  使用Iterator,就无法操纵或修改集合中的元素。

  ListIterator是什么?

  ListIterator是Collection框架中的一个接口;是用于扩展Iterator接口的。使用ListIterator,可以向前和向后遍历集合的元素。还可以添加、删除或修改集合中的任何元素。简而言之,我们可以说它消除了Iterator的缺点。

  ListIterator的方法如下:

  hasNext():如果返回true,则确认集合中有更多元素。

  next():返回列表的下一个元素。

  nextIndex():返回列表中下一个元素的索引。

  hasPrevious():如果集合中有相反的元素,则返回true。

  previous():返回集合中的上一个元素。

  previousIndex():返回集合中上一个元素的索引。

  remove():从集合中删除元素。

  set():修改集合中的元素。

  add():在集合中添加新元素。

  Iterator和ListIterator之间的主要区别?

  1、遍历

  使用Iterator,可以遍历所有集合,如Map,List,Set;但只能在向前方向上遍历集合中的元素。

  使用ListIterator,只能遍历List实现的对象,但可以向前和向后遍历集合中的元素。

  2、添加元素

  Iterator无法向集合中添加元素;而,ListIteror可以向集合添加元素。

  3、修改元素

  Iterator无法修改集合中的元素;而,ListIterator可以使用set()修改集合中的元素。

  4、索引

  Iterator无法获取集合中元素的索引;而,使用ListIterator,可以获取集合中元素的索引。

  更多关于“java培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT