从 LinkedList 访问元素的 Java 程序

要理解此示例,您应该具备以下 Java 编程的知识:

示例 1:访问链表中的元素

import java.util.LinkedList;

public class Main {
  public static void main(String[] args) {
    LinkedList<String> languages = new LinkedList<>();

    // add elements in the LinkedList
    languages.add("Python");
    languages.add("Java");
    languages.add("JavaScript");
    System.out.println("LinkedList: " + languages);

    // get the element from the LinkedList
    String str = languages.get(1);
    System.out.print("Element at index 1: " + str);
  }
}

输出

LinkedList: [Python, Java, JavaScript]
Element at index 1: Java

在上面的例子中,我们使用了 get() 参数为 1 的方法。这里,该方法返回索引 1 处的元素。

示例 2:使用 iterator() 方法

我们还可以使用 iterator() 方法迭代链表的元素。我们必须导入 java.util.Iterator 包才能使用此方法。例如,

import java.util.LinkedList;
import java.util.Iterator;

public class Main {
    public static void main(String[] args) {
        LinkedList<String> animals= new LinkedList<>();

        // Add elements in LinkedList
        animals.add("Dog");
        animals.add("Horse");
        animals.add("Cat");

        // Creating an object of Iterator
        Iterator<String> iterate = animals.iterator();
        System.out.print("LinkedList: ");

        while(iterate.hasNext()) {
            System.out.print(iterate.next());
            System.out.print(", ");
        }
    }
}

输出

LinkedList: Dog, Cat, Horse,

这里,

  • hasNext() - 如果有下一个元素则返回 true
  • next() - 返回下一个元素

要了解更多信息 Iterator ,请访问 Java 迭代器接口

示例 3:使用 listIterator() 方法

我们还可以使用该 listIterator() 方法迭代 LinkedList 的元素。要使用这种方法,我们必须导入 java.util.ListIterator 包。

import java.util.LinkedList;
import java.util.ListIterator;

public class Main {
    public static void main(String[] args) {
        LinkedList<String> animals= new LinkedList<>();

        // Add elements in LinkedList
        animals.add("Dog");
        animals.add("Horse");
        animals.add("Cat");

        // Create an object of ListIterator
        ListIterator<String> listIterate = animals.listIterator();
        System.out.print("LinkedList: ");

        while(listIterate.hasNext()) {
            System.out.print(listIterate.next());
            System.out.print(", ");
        }

        // Iterate backward
        System.out.print("\nReverse LinkedList: ");

        while(listIterate.hasPrevious()) {
            System.out.print(listIterate.previous());
            System.out.print(", ");
        }
    }
}

输出

LinkedList: Dog, Horse, Cat,
Reverse LinkedList: Cat, Horse, Dog,

这里,

  • hasNext() - 如果有下一个元素则返回 true
  • next() - 返回下一个元素
  • hasPrevious() - 如果存在先前的元素,则返回 true
  • previous() - 返回前一个元素

要了解更多信息 ListIterator ,请访问Java ListIterator 接口

注意:该 listIterator() 方法比 iterator() . 这是因为它也允许您向后迭代。