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

Java中Suitcase类toString调用getTotalWeight报cannot find symbol错误原因

问题解答

报错根源

cannot find symbol报错的核心原因是方法调用的对象类型错误:

  • getTotalWeight()是定义在Suitcase类本身的成员方法,不属于ArrayList类的内置方法
  • 你代码中写的this.items.getTotalWeight()里,this.items是ArrayList<Item>类型的实例,它没有对应getTotalWeight()的方法实现,编译器找不到方法定义就会抛出该报错。

修复方法

直接把toString方法里的this.items.getTotalWeight()改为this.getTotalWeight()即可,修改后完整的toString方法代码如下:

public String toString() {
    if (this.items.size() == 1) {
        return this.items.size() + " item (" + this.getTotalWeight() + " kg)";
    } else {
        return this.items.size() + " items (" + this.getTotalWeight() + " kg)";
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 09:09:00