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

Android中使用JSONObject类调用getString方法返回null如何解决?

问题排查步骤

  • 先确认异常捕获逻辑是否触发:检查控制台是否打印了JSONException的堆栈信息。如果put操作本身执行失败被catch捕获,student2中实际没有写入name字段,后续get操作自然返回null。常见的put失败场景包括当前使用的JSONObject实现是只读实例、key参数不符合实现类要求。
  • 核对导入的JSONObject依赖包:不同库的JSONObject实现逻辑差异极大,是这类问题的高发原因:
    • 若导入的是org.json.simple.JSONObject:该实现的put方法不会抛出JSONException,出现写入异常时会直接静默失败,可升级依赖版本或更换为org.json的官方实现。
    • 若导入的是fastjson、net.sf.json等第三方实现:部分旧版本存在特殊字符处理bug,可手动重新输入"name"字符串作为key,避免复制粘贴的key隐含零宽空格等不可见字符,导致put和get使用的key实际不匹配。
  • 排查变量覆盖或字段修改逻辑:在put操作后直接打印整个student2对象,确认对象内部是否确实包含name键值对。如果打印结果中不存在该字段,说明put操作未生效;如果存在但get返回null,可检查代码中put和get之间是否有移除字段、覆盖同名变量的逻辑。
// 新增调试代码示例
student2.put("name", "NAME OF STUDENT2");
System.out.println(student2); // 直接打印全量对象确认内容

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 22:30:03