Rumah > Java > javaTutorial > Java Iterator and Iterable: Meneroka Seni Java Collection Traversal

Java Iterator and Iterable: Meneroka Seni Java Collection Traversal

PHPz
Lepaskan: 2024-02-19 23:10:18
ke hadapan
1208 orang telah melayarinya

Java Iterator 和 Iterable:探索 Java 集合遍历的艺术

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);
}
}
}
Salin selepas log masuk

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);
}
}
}
Salin selepas log masuk

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);
}
}
}
Salin selepas log masuk

Keluaran:

Java
Python
C++
C#
Java
Python
C++
C#
Salin selepas log masuk

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!

Label berkaitan:
sumber:lsjlt.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan