Java Iterator and Iterable: Terokai seni traversal koleksi di Jawa. Dalam pengaturcaraan Java, Iterator dan Iterable ialah antara muka penting untuk merentasi elemen koleksi. Mereka menyediakan cara yang fleksibel dan cekap untuk mengakses dan memanipulasi elemen dalam koleksi. Artikel ini akan menyelidiki prinsip dan penggunaan antara muka Iterator dan Iterable untuk membantu pembaca memahami dengan lebih baik butiran teknikal traversal koleksi Java. Editor PHP Banana akan mendedahkan misteri "seni" ini untuk semua orang, membolehkan anda menguasai intipati traversal koleksi dengan mudah.
1. Antara muka Iterator
Antara muka Iterator mentakrifkan kaedah untuk melintasi elemen koleksi, termasuk hasNext() dan next(). Kaedah hasNext() digunakan untuk menyemak sama ada terdapat lebih banyak elemen dalam koleksi, dan kaedah next() digunakan untuk mendapatkan elemen seterusnya.
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); } } }
Keluaran:
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); } } }
Keluaran:
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); } } }
Keluaran:
Java Python C++ C# Java Python C++ C#
4. Kesimpulan
Iterator dan Iterable ialah dua antara muka yang penting dalam rangka kerja koleksi Java untuk merentasi elemen koleksi, manakala Iterable mewakili koleksi yang boleh dilalui dengan berkesan.
Atas ialah kandungan terperinci Java Iterator and Iterable: Meneroka Seni Java Collection Traversal. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!