您好,登錄后才能下訂單哦!
迭代器模式是一種行為設計模式,它讓你能在不暴露集合底層表現形式(列表、堆棧和樹等)的情況下遍歷集合中所有的元素。在Java中,使用迭代器模式遍歷集合是一種優雅的方式。
以下是使用Java迭代器模式遍歷集合的示例:
Iterator
,它包含一個方法hasNext()
用于檢查是否還有下一個元素,以及一個方法next()
用于獲取下一個元素。public interface Iterator {
boolean hasNext();
Object next();
}
List
、Set
等)創建一個具體的迭代器類。這個類需要實現Iterator
接口,并持有集合的引用。import java.util.ArrayList;
import java.util.List;
public class ListIterator implements Iterator {
private List<Object> list;
private int currentIndex;
public ListIterator(List<Object> list) {
this.list = list;
this.currentIndex = -1;
}
@Override
public boolean hasNext() {
return currentIndex < list.size() - 1;
}
@Override
public Object next() {
if (!hasNext()) {
throw new IllegalStateException("No more elements");
}
currentIndex++;
return list.get(currentIndex);
}
}
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Object> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
Iterator iterator = new ListIterator(list);
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
}
}
輸出:
A
B
C
這種方式使得代碼更加簡潔、易于理解,同時也提高了代碼的可擴展性。如果需要支持其他集合類型,只需創建相應的迭代器類即可。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。