Java 中迭代 LinkedList 的方法有多少種?
一個LinkedList是一個數據結構,它包含一個節點組,這些節點以順序方式透過指標連線。一個LinkedList可以表現得像一個動態陣列,它為每個元素分別分配空間在其自己的記憶體塊中,稱為節點。每個節點包含兩個欄位,一個“資料”欄位用於儲存列表持有的元素型別,以及一個“下一個”欄位,它是一個指標,用於將一個節點連結到下一個節點。
我們可以在 Java 中以三種方式迭代 LinkedList 的元素。
使用迭代器
我們可以透過Iterator類迭代 LinkedList 的元素。
示例
import java.util.*; public class LinkedListIteratorTest { public static void main(String[] args) { List<String> list = new LinkedList<>(); list.add("Kohli"); list.add("Morgan"); list.add("Williamson"); list.add("Smith"); list.add("Kohli"); Iterator it = list.iterator(); while(it.hasNext()) { System.out.println(it.next()); } } }
輸出
Kohli Morgan Williamson Smith Kohli
使用 ListIterator
我們可以透過ListIterator類迭代 LinkedList 的元素。
示例
import java.util.*; public class LinkedListWithListIteratorTest { public static void main(String[] args) { List<String> list = new LinkedList<>(); list.add("Kohli"); list.add("Morgan"); list.add("Williamson"); list.add("Smith"); list.add("Kohli"); ListIterator<String> li = list.listIterator(); while(li.hasNext()) { System.out.println(li.next()); } } }
輸出
Kohli Morgan Williamson Smith Kohli
使用 For-each 迴圈
我們還可以透過for-each 迴圈迭代 LinkedList 的元素。
示例
import java.util.*; public class LinkedListForEachTest { public static void main(String[] args) { List<String> list = new LinkedList<>(); list.add("Kohli"); list.add("Morgan"); list.add("Williamson"); list.add("Smith"); list.add("Kohli"); for(String str : list) { System.out.println(str); } } }
輸出
Kohli Morgan Williamson Smith Kohli
廣告