青衣 发表于 2021-8-17 11:38:37

一文搞懂Java中Iterator接口的用法


一、Iterator接口
(一)在项目开发中,很多时候需要遍历集合中所有元素。大多数会选择for循环、foreach循环等。Iterator接口是Java集合框架中的其中之一,它和Collection、Map接口是不同的。Iterator是用来遍历Collection集合中元素,Iterator对象被称为迭代器。
(二)Iterator常用的方法:
1.boolean hasNext():判断集合中是否存在下一个遍历元素,如果还有元素没被遍历,返回true;反之,返回false。
2.Object next():返回集合中的下一个元素。
3.void remove():删除集合中上一次的next()方法返回的元素。
4.void forEachRemaining():Java1.8中新增的默认方法,它是对剩余的每个元素执行操作,直到所有元素都已经处理或抛出异常。
二、Iterator接口中boolean hasNext()方法、Object next()方法
1.boolean hasNext():判断集合中是否存在下一个遍历元素,如果还有元素没被遍历,返回true;反之,返回false。
2.Object next():返回集合中的下一个元素。
3.例子的实现:
import java.util.ArrayList;
import java.util.Iterator;
public class t3 {
public static void main(String[] args) {
      // TODO Auto-generated method stub
      //创建ArrayList集合
      ArrayList al=new ArrayList();
      al.add("Java");
      al.add("C语言");
      al.add("Python");
      //获取Iterator对象
      Iterator it=al.iterator();
      //hasNext()方法
      while(it.hasNext()){
            //next()方法
            String s = (String)it.next();
            System.out.println(s);
      }
}
}
运行的结果是:
三、Iterator接口中void remove()方法
1.void remove():删除集合中上一次的next()方法返回的元素。
2.例子的实现:
import java.util.ArrayList;
import java.util.Iterator;
public class t3 {
public static void main(String[] args) {
      // TODO Auto-generated method stub
      //创建ArrayList集合
      ArrayList al=new ArrayList();
      al.add("软件测试");
      al.add("HTML5");
      al.add("Vue.js");
      //获取Iterator对象
      Iterator it=al.iterator();
      //hasNext()方法
      while(it.hasNext()){
            //next()方法
            String s = (String)it.next();
            System.out.println(s);
            if(s.equals("Vue.js")){
                //remove()方法
                it.remove();
            }
      }
      //删除元素后打印集合元素
      System.out.println(al);
}
}
运行的结果是:
四、 Enumeration接口
1.Enumeration接口用法和Iterator接口很相似,JDK提供一个Vector集合,这个集合是List接口的一个实现类,Vector类中有一个element()方法返回Enumeration对象,然后通过这个对象遍历集合中的元素。
2.Enumeration对象遍历Vector集合例子:
import java.util.*;
public class t3 {
public static void main(String[] args) {
      // TODO Auto-generated method stub
      //创建Vector对象
      Vector v=new Vector();
      v.add("Java");
      v.add("进阶");
      v.add("学习");
      v.add("交流");
      //获取Enumeration对象
      Enumeration e=v.elements();
      //判断对象是否还有更多的元素
      while(e.hasMoreElements()){
            Object o=e.nextElement();
            System.out.println(o);
      }
}
}
运行的结果是:
五、总结
本文主要介绍了Iterator接口、Iterator接口常用方法,Enumeration接口。Iterator是用来遍历Collection集合中元素,Iterator对象被称为迭代器。通过例子介绍如何使用Iterator接口中boolean hasNext()方法、Object next()方法、void remove()方法。Enumeration接口实质上也是遍历集合中的元素。希望大家通过本文的学习,对你有所帮助!
原文链接:https://mp.weixin.qq.com/s/mphQOcVocu_p3lXNvmS0qg

文档来源:服务器之家http://www.zzvips.com/article/180791.html
页: [1]
查看完整版本: 一文搞懂Java中Iterator接口的用法