在Java中有几种迭代LinkedList的方式?

在Java中有几种迭代LinkedList的方式?

一个LinkedList是一种数据结构,它包含一组以指针连接的节点,按顺序排列。一个LinkedList可以作为一个动态数组,它在自己的内存块中为每个元素分配独立的空间,这个内存块称为Node。每个节点包含两个字段,一个“data”字段用于存储列表所持有的元素类型,一个“next”字段是一个指针,用于将一个节点链接到下一个节点。

我们可以用三种方式在Java中遍历LinkedList的元素。

使用Iterator

我们可以通过Iterator类遍历LinkedList的元素。

示例

import java.util.*;
public class LinkedListIteratorTest {
   public static void main(String[] args) {
      List 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

我们可以通过迭代LinkedList的元素ListIterator 类。

示例

import java.util.*;
public class LinkedListWithListIteratorTest {
   public static void main(String[] args) {
      List list = new LinkedList();
      list.add("Kohli");
      list.add("Morgan");
      list.add("Williamson");
      list.add("Smith");
      list.add("Kohli");
      ListIterator li = list.listIterator();
      while(li.hasNext()) {
         System.out.println(li.next());
      }
   }
}

登录后复制

输出

Kohli
Morgan
Williamson
Smith
Kohli

登录后复制登录后复制登录后复制

唱 For-each 循环

我们还可以迭代 LinkedList 的元素通过for-each循环。

示例

import java.util.*;
public class LinkedListForEachTest {
   public static void main(String[] args) {
      List 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

登录后复制登录后复制登录后复制

以上就是在Java中有几种迭代LinkedList的方式?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!