在Java中,可以使用雙向鏈表的Iterator
來遍歷鏈表。具體步驟如下:
list.iterator()
方法獲取鏈表的Iterator
對象。Iterator
對象的hasNext()
方法檢查是否還有下一個元素。Iterator
對象的next()
方法獲取下一個元素。Iterator
對象的remove()
方法刪除當前元素。下面是一個示例代碼:
import java.util.LinkedList;
import java.util.ListIterator;
public class Main {
public static void main(String[] args) {
LinkedList<String> list = new LinkedList<>();
list.add("A");
list.add("B");
list.add("C");
ListIterator<String> iterator = list.listIterator();
System.out.println("從前向后遍歷:");
while (iterator.hasNext()) {
String element = iterator.next();
System.out.println(element);
}
System.out.println("\n從后向前遍歷:");
while (iterator.hasPrevious()) {
String element = iterator.previous();
System.out.println(element);
}
}
}
輸出結果為:
從前向后遍歷:
A
B
C
從后向前遍歷:
C
B
A
注意,在從后向前遍歷時,需要先從前向后遍歷完整個鏈表,然后再反向遍歷。