在 Java 中有多少种方法可以迭代 LinkedList?

javaobject oriented programmingprogramming更新于 2025/6/30 10:52:17

LinkedList 是一种数据结构,它包含一组通过指针按顺序连接的 节点组。LinkedList 可以充当 动态数组,并在其自己的内存块(称为 Node)中为每个元素单独分配空间。每个节点包含两个字段,一个"data"字段用于存储列表包含的元素类型,另一个"next"字段用于存储列表包含的元素类型。字段是一个指针,用于将一个节点链接到下一个节点e。

在 Java 中,我们可以用三种方式迭代 LinkedList 的元素。

使用 Iterator

我们可以通过 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

相关文章


有用资源