前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Java中Iterator迭代器详解

Java中Iterator迭代器详解

作者头像
訾博ZiBo
发布2025-01-06 13:52:48
发布2025-01-06 13:52:48
9900
代码可运行
举报
运行总次数:0
代码可运行

一、Java中Iterator迭代器详解

1、为什么需要迭代器

Java中的集合各式各样,很多应用场景下需要对集合里面的元素进行遍历,有的集合有下标(ArrayList、Vector、LinkedList),有的集合没有下标。有下标的集合可以轻易地通过下标进行遍历,没有下标的集合遍历起来就非常麻烦,因此Java引入了迭代器模式迭代器可以使得我们能够使用一种通用的方式遍历各种集合元素

2、迭代器长什么样子

代码语言:javascript
代码运行次数:0
复制
// 迭代器主要提供下面这三个方法
public interface Iterator<E> {
    // 是否有下一个元素
    boolean hasNext();
    // 获取下一个元素
    E next();
    // 删除元素
    void remove();
}

3、如何使用迭代器

使用步骤:
  • 获取迭代器;
  • 判断是否存在下一个元素;
  • 获取下一个元素;
代码演示:
代码语言:javascript
代码运行次数:0
复制
package com.zibo.java.february.third;

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

public class MyListStudy {
    public static void main(String[] args) {
        // 创建一个list
        List<String> list = new ArrayList<>();
        list.add("大哥");
        list.add("二哥");
        list.add("三哥");
        list.add("四哥");
        // 获取迭代器;
        Iterator<String> iterator = list.iterator();
        // 判断是否存在下一个元素;
        while (iterator.hasNext()){
            // 获取下一个元素;
            System.out.println(iterator.next());
        }
    }
}
迭代器可以简化为增强型for循环:
代码语言:javascript
代码运行次数:0
复制
package com.zibo.java.february.third;

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

public class MyListStudy {
    public static void main(String[] args) {
        // 创建一个list
        List<String> list = new ArrayList<>();
        list.add("大哥");
        list.add("二哥");
        list.add("三哥");
        list.add("四哥");
        // 获取迭代器;
        // 判断是否存在下一个元素;
        for (String s : list) {
            // 获取下一个元素;
            System.out.println(s);
        }
        // 增强型for循环内部使用的就是迭代器
    }
}

4、Iterator与ListIterator有什么区别

Iterator只能正向遍历集合,适用于获取移除元素。ListIerator继承自Iterator,专门针对List,可以从两个方向遍历List,同时支持元素的修改;

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Java中Iterator迭代器详解
    • 1、为什么需要迭代器
    • 2、迭代器长什么样子
    • 3、如何使用迭代器
      • 使用步骤:
      • 代码演示:
      • 迭代器可以简化为增强型for循环:
    • 4、Iterator与ListIterator有什么区别
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档