评论

收藏

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

编程语言 编程语言 发布于:2021-08-17 11:38 | 阅读数:361 | 评论:0

DSC0000.png

一、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); 
    } 
} 
}
运行的结果是:
DSC0001.jpg 三、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); 
} 
}
运行的结果是:
DSC0002.jpg 四、 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); 
    } 
} 
}
运行的结果是:
DSC0003.jpg 五、总结
本文主要介绍了Iterator接口、Iterator接口常用方法,Enumeration接口。Iterator是用来遍历Collection集合中元素,Iterator对象被称为迭代器。通过例子介绍如何使用Iterator接口中boolean hasNext()方法、Object next()方法、void remove()方法。Enumeration接口实质上也是遍历集合中的元素。希望大家通过本文的学习,对你有所帮助!
原文链接:https://mp.weixin.qq.com/s/mphQOcVocu_p3lXNvmS0qg

关注下面的标签,发现更多相似文章