首页 > 图灵资讯 > 技术篇>正文
探索 Java 集合中的 Iterator 和 Iterable 的使用方法
2024-03-27 15:59:41
Java Iterator 和 Iterable 是 Java 集合两个重要的接口,用于在框架中遍历集合元素,Iterator 它提供了遍历集合元素的方法 Iterable 表示可遍历的集合。这两个接口协同工作,有效实现了集合元素的遍历和操作。
1. Iterator 接口
Iterator 界面定义了遍历集合元素的方法,包括 hasNext() 和 next()。hasNext() 该方法用于检查集合中是否有元素,next() 该方法用于获取下一个元素。
import java.util.Iterator; public class IteratorDemo { public static void main(String[] args) { // 创建一个 ArrayList 集合 ArrayList<String> list = new ArrayList<>(); // 将一些元素添加到集合中 list.add("Java"); list.add("python"); list.add("c++"); list.add("C#"); // 获取集合的 Iterator 对象 Iterator<String> iterator = list.iterator(); // 集合元素遍历 while (iterator.hasNext()) { String element = iterator.next(); System.out.println(element); } } }
输出:
import java.util.Iterable; public class IterableDemo implements Iterable<String> { private String[] elements = {"Java", "Python", "C++", "C#"}; @Override public Iterator<String> iterator() { return new Iterator<String>() { private int index = 0; @Override public boolean hasNext() { return index < elements.length; } @Override public String next() { return elements[index++]; } }; } public static void main(String[] args) { // 创建一个 IterableDemo 对象 IterableDemo iterableDemo = new IterableDemo(); // 集合元素遍历 for (String element : iterableDemo) { System.out.println(element); } } }
输出:
import java.util.ArrayList; import java.util.Iterator; public class IteratorIterableDemo { public static void main(String[] args) { // 创建一个 ArrayList 集合 ArrayList<String> list = new ArrayList<>(); // 在集合中加入一些元素 list.add("Java"); list.add("Python"); list.add("C++"); list.add("C#"); // 使用 Iterator 集合元素遍历 Iterator<String> iterator = list.iterator(); while (iterator.hasNext()) { String element = iterator.next(); System.out.println(element); } // 使用 for-each 循环集合元素遍历 for (String element : list) { System.out.println(element); } } }
输出:
Java Python C++ C# Java Python C++ C#
4. 结论
Iterator 和 Iterable 是 Java 两个重要的接口用于集合框架中的集合元素,Iterator 它提供了遍历集合元素的方法 Iterable 表示可遍历的集合,两者协同工作,有效地实现了集合元素的遍历和操作。