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

Java自定义LinkedList实现时show方法无法打印最后一个节点问题求助

问题原因

你的show()方法的循环判断逻辑存在问题:
当前使用while (temp.next != null)作为循环条件,当temp指向链表最后一个节点时,temp.next的值为null,循环会直接终止,最后一个节点的val不会进入循环执行打印逻辑,所以会出现漏打最后一个节点的问题。

修复方案

将循环条件修改为判断当前节点temp本身是否为null,先打印当前节点值再移动指针即可,修复后的show()方法代码如下:

public void show() {
    Node temp = head;
    while (temp != null) {
        System.out.print(temp.val + " ");
        temp = temp.next;
    }
    System.out.println();
}

验证效果

修复后运行主方法:

  1. 第一次调用show()会完整输出插入的所有节点:5 10 13 15 20
  2. 删除值为13的节点后第二次调用show(),输出为:5 10 15 20
    所有节点都可以正常打印。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 14:57:01