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

Kotlin类变量返回默认值而非修改后的值求助

问题分析与修复方案
  • 核心问题根源:你在Java类WeatherData的getTemp()方法里,错误创建了新的WeatherData实例来设置WeatherDescription,而非给当前对象的属性赋值。这导致你操作的是临时对象,当前实例的WeatherDescription始终保持默认空字符串;调试时看到的正确值属于临时对象,方法执行完后临时对象被回收,值自然消失。

  • 修复步骤:

    1. 修改getTemp()方法,直接操作当前对象的属性:
      public void getTemp() {
          // 移除这行无效代码:WeatherData weatherData = new WeatherData();
          // 直接给当前对象赋值
          this.setWeatherDescription("温度逻辑对应的描述文本");
          // 若属性可直接访问,也可写:this.weatherDescription = "...";
      }
      
    2. 检查Kotlin代码对WeatherData的使用:确保全程操作同一个实例,不要在调用getTemp()前后重复创建新的WeatherData对象,避免新实例的默认值覆盖已赋值的内容。
    3. 排查所有修改weatherDescription的代码:确认没有其他方法或逻辑在后续将该属性重置为空字符串。

内容的提问来源于stack exchange,提问作者Kürşat Saim TUNA

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 15:14:53