Java中的LinkedList removeLast()方法

Java中的LinkedList removeLast()方法

在Java中,LinkedList是一种常用的数据结构,它可以被用来模拟一个链式的列表,栈或队列。

其中,LinkedList的removeLast()方法是指删除链表的最后一个元素。在这篇文章中,我们将学习这个方法的用法、示例和一些注意点。

基本用法

LinkedList类提供了removeLast()方法来删除列表中的最后一个元素。它的语法如下:

public E removeLast()

这个方法返回被删除的元素。如果列表为空,则抛出NoSuchElementException异常。

接下来,我们来看看这个方法的示例代码:

import java.util.LinkedList;

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

        linkedList.add("A");
        linkedList.add("B");
        linkedList.add("C");

        System.out.println("LinkedList before removing last element:" + linkedList);

        String removedElement = linkedList.removeLast();

        System.out.println("Removed Element: " + removedElement);
        System.out.println("LinkedList after removing last element:" + linkedList);
    }
}

上述代码首先创建一个LinkedList对象,并向其中添加三个字符串元素“A”、“B”和“C”。然后,程序输出列表内容,并运行removeLast()方法删除最后一个元素,即“C”。

最后,程序再次输出列表内容,以验证removeLast()方法的效果。

运行上述代码输出如下:

LinkedList before removing last element:[A, B, C]
Removed Element: C
LinkedList after removing last element:[A, B]

我们可以看到,删除最后一个元素“C”后,LinkedList中只剩下了“A”和“B”。

注意事项

空链表的情况

如果LinkedList为空,那么调用removeLast()方法将抛出NoSuchElementException异常。因此,在调用removeLast()方法之前,我们需要确认LinkedList中是否至少包含一个元素。

下面是一个演示的代码:

import java.util.LinkedList;
import java.util.NoSuchElementException;

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

        try {
            linkedList.removeLast();
        } catch (NoSuchElementException e) {
            System.out.println("LinkedList is empty");
        }
    }
}

上述代码创建了一个空的LinkedList对象,并尝试删除最后一个元素。这个操作将抛出NoSuchElementException异常。为了处理这个异常,我们使用try-catch块来捕获这个异常,并打印出相应的错误信息。

remove()和pollLast()

除了removeLast()方法以外,LinkedList还提供了其他两个方法来删除最后一个元素:remove()和pollLast()。

这三个方法的区别在于,如果LinkedList为空,调用removeLast()和remove()方法将抛出NoSuchElementException异常,而调用pollLast()方法将返回null。

下面是这三个方法的示例代码:

import java.util.LinkedList;

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

        linkedList.add("A");
        linkedList.add("B");
        linkedList.add("C");

        System.out.println("LinkedList before removing last element:" + linkedList);

        // Using removeLast()
        String removedElementByRemoveLast = linkedList.removeLast();
        System.out.println("Removed Element By removeLast(): " + removedElementByRemoveLast);
        System.out.println("LinkedList after removing last element by removeLast():" + linkedList);

        // Using remove()
        String removedElementByRemove = linkedList.remove();
        System.out.println("Removed Element By remove(): " + removedElementByRemove);
        System.out.println("LinkedList after removing last element by remove():" + linkedList);

        // Using pollLast()
        String removedElementByPollLast = linkedList.pollLast();
        System.out.println("Removed Element By pollLast(): " + removedElementByPollLast);
        System.out.println("LinkedList after removing last element by pollLast():" + linkedList);
    }
}

上述代码首先向LinkedList中添加三个字符串元素,然后使用removeLast()方法删除最后一个元素,并输出列表内容。接着,程序使用remove()方法删除列表头的元素,并再次输出列表内容。最后,程序使用pollLast()方法删除最后一个元素,并再次输出列表内容。

运行上述代码输出如下:

LinkedList before removing last element:[A, B, C]
Removed Element By removeLast(): C
LinkedList after removing last element by removeLast():[A, B]
Removed Element By remove(): A
LinkedList after removing last element by remove():[B]
Removed Element By pollLast(): B
LinkedList after removing last element by pollLast():[]

我们可以看到,经过三个方法的操作,最终LinkedList被清空。

结论

在Java的LinkedList中,removeLast()方法可以被用来删除列表中的最后一个元素。在使用该方法时,需要注意空链表的异常情况和该方法与remove()和pollLast()方法的区别。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程