You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java中removeLast方法实现求助:无法正确移除ArrayList最后元素

问题解决与说明

一、“列表为空时方法不执行任何操作”的具体含义

当传入的ArrayList是空的(即strings.size() == 0),你的方法需要满足:

  • 不能调用任何会触发异常的修改操作(比如直接调用remove),否则会抛出IndexOutOfBoundsException
  • 方法执行后,空列表依然保持为空状态,不会产生任何异常或额外行为

二、测试报错原因与修正方案

你收到的报错removeLast method should remove the last element of the list,说明代码没有正确定位到最后一个元素(比如误写为remove(0)移除第一个元素)。

正确的实现代码如下:

import java.util.ArrayList;

public class YourClass {
    public static void removeLast(ArrayList<String> strings) {
        // 先判断列表非空,再执行移除操作
        if (!strings.isEmpty()) {
            // 最后一个元素的索引为列表长度减1,动态适配列表实时长度
            strings.remove(strings.size() - 1);
        }
        // 列表为空时,方法直接结束,无任何操作
    }
}

关键细节:

  • strings.isEmpty():比size() == 0更直观高效的空列表判断方式
  • strings.size() - 1:ArrayList索引从0开始,最后一个元素的索引永远等于当前列表长度减1,确保每次都精准移除最后一个元素

内容的提问来源于stack exchange,提问作者belinyom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 06:16:21