Iterator 和 ListIterator 有什么区别

Iterator 和 ListIterator 有什么区别?

  • ListIterator 继承 Iterator
  • ListIterator 比 Iterator多方法

          add(E e)  将指定的元素插入列表,插入位置为迭代器当前位置之前
          set(E e)  迭代器返回的最后一个元素替换参数e
          hasPrevious()  迭代器当前位置,反向遍历集合是否含有元素
          previous()  迭代器当前位置,反向遍历集合,下一个元素
          previousIndex()  迭代器当前位置,反向遍历集合,返回下一个元素的下标
          nextIndex()  迭代器当前位置,返回下一个元素的下标

  • 使用范围不同,Iterator可以迭代所有集合;ListIterator 只能用于List及其子类
  • ListIterator 有 add 方法,可以向 List 中添加对象;Iterator 不能
  • ListIterator 有 hasPrevious() 和 previous() 方法,可以实现逆向遍历;Iterator不可以
  • ListIterator 有 nextIndex() 和previousIndex() 方法,可定位当前索引的位置;Iterator不可以
  • ListIterator 有 set()方法,可以实现对 List 的修改;Iterator 仅能遍历,不能修改

 


【Java面试题与答案】整理推荐

  • 基础与语法
  • 集合
  • 网络编程
  • 并发编程
  • Web
  • 安全
  • 设计模式
  • 框架
  • 算法与数据结构
  • 异常
  • 文件解析与生成
  • Linux
  • MySQL
  • Oracle
  • Redis
  • Dubbo

 

你可能感兴趣的:(面试,自做,Java,面试题)