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

更新於: 2020年7月3日

282 次檢視

啟動你的 職業生涯

透過完成課程獲得認證

開始
廣告