Can we write our own iterator in Java?(我们可以用 Java 编写自己的迭代器吗?)
问题描述
如果我有一个包含 [alice, bob, abigail, charlie] 的列表,并且我想编写一个迭代器,以便它遍历以 'a' 开头的元素,我可以编写自己的吗?我怎样才能做到这一点 ?
If I have a list containing [alice, bob, abigail, charlie] and I want to write an iterator such that it iterates over elements that begin with 'a', can I write my own ? How can I do that ?
推荐答案
当然.迭代器只是 java 的一个实现.util.Iterator 接口.如果您正在使用来自 java.util 的现有可迭代对象(例如,LinkedList),则需要对其进行子类化并覆盖其 iterator 函数,以便您返回自己的,或提供一种将标准迭代器包装在您的特殊 Iterator 实例中的方法(其优点是使用更广泛),等等.
Sure. An iterator is just an implementation of the java.util.Iterator interface. If you're using an existing iterable object (say, a LinkedList) from java.util, you'll need to either subclass it and override its iterator function so that you return your own, or provide a means of wrapping a standard iterator in your special Iterator instance (which has the advantage of being more broadly used), etc.
这篇关于我们可以用 Java 编写自己的迭代器吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:我们可以用 Java 编写自己的迭代器吗?
基础教程推荐
- 多个组件的复杂布局 2022-01-01
- 不推荐使用 Api 注释的描述 2022-01-01
- Java 实例变量在两个语句中声明和初始化 2022-01-01
- Java Swing计时器未清除 2022-01-01
- 如何在 Spring @Value 注解中正确指定默认值? 2022-01-01
- 验证是否调用了所有 getter 方法 2022-01-01
- 从 python 访问 JVM 2022-01-01
- 如何在 JFrame 中覆盖 windowsClosing 事件 2022-01-01
- 在 Java 中创建日期的正确方法是什么? 2022-01-01
- 大摇大摆的枚举 2022-01-01
