Java-基础-Iterator迭代器

目录

  • 1 基本概念
  • 2 常见方法
  • 3 示例代码
  • 4 for循环与Iterator迭代器
  • 5 参考文献

1 基本概念

Java Iterator(迭代器)是一种用于访问集合的方法,可用于迭代ArrayList、HashSet等集合中的数据。

2 常见方法

Java Iterator(迭代器)常用方法:

  • next():返回迭代器的下一个元素,并更新迭代器的状态。
  • hasNext():判断集合中是否还有元素。
  • remove():删除当前迭代器返回的元素。

3 示例代码

package demo;

import java.util.ArrayList;
import java.util.Iterator;

/**
 * @author allan
 * @version 1.0
 * @description 迭代器例子
 * @date 21211213 1146
 **/
public class IteratorDemo {
    public static void main(String[] args){
        ArrayList<String> firstArrayList = new ArrayList<>();    //测试数组
        firstArrayList.add("1");
        firstArrayList.add("2");
        firstArrayList.add("3");

        Iterator<String> firstIterator =  firstArrayList.iterator();   //基于数组获取迭代器
        while(firstIterator.hasNext()){   //循环数组,并判断数组是否有下一个元素
            System.out.println(firstIterator.next()); //若有,则打印元素内容
        }
        System.out.println("--------分割线---------");

        ArrayList<String> secondArrayList = new ArrayList<>();    //测试数组
        secondArrayList.add("4");
        secondArrayList.add("5");
        secondArrayList.add("6");

        System.out.println(secondArrayList.size());   //此时数组的长度为3
        Iterator<String> secondIterator =  secondArrayList.iterator();   //基于数组获取迭代器
        while(secondIterator.hasNext()){
            String i = secondIterator.next();
            if("4".equals(i)){
                secondIterator.remove();   //删除当前迭代器返回的元素
            }
        }
        System.out.println(secondArrayList.size());   //此时数组的长度为2,因为删除了"1"
    }
}

4 for循环与Iterator迭代器

  • for循环使用的是get()方法,采用的是随机访问的方式,故适用与ArrayList,因为ArrayList使用随机访问比较快。
  • Iterator迭代器使用的是next()方法,采用的是顺序访问的方式,故适用与LinkedList,因为LinkedList使用顺序访问比较快。

5 参考文献

Java Iterator(迭代器)
深入理解Java中的迭代器

你可能感兴趣的:(java,开发语言,后端)