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

Flutter报错Invalid radix-10 number (at character 1) null解决方案求助

问题根因

报错是因为你代码中调用int.parse()时传入的参数是字符串"null",无法被识别为十进制整数。本质是value['Score']字段为null,调用toString()后得到的是"null"字符串,不符合int.parse()的入参要求。

修复方案

  1. 优先使用int.tryParse()替代int.parse(),同时增加空值判断,转换失败时可以设置兜底默认值,修改后的代码如下:
child: Column(
  children: [
    ...(question[questionIndex]['answer'] as List<Map<String,Object>>).map((value){
      // 空值校验+安全转换,转换失败默认返回0,可根据业务需求调整默认值
      int score = int.tryParse(value['Score']?.toString() ?? '') ?? 0;
      return Answer(() => answerQuestion(score), value['text'].toString());
    }).toList(),
  ],
),
  1. 排查你的question数据源:检查所有answer数组下的元素,是否都正确设置了Score字段,注意字段名大小写是否一致、有没有拼写错误,确保业务层面不会出现Score为null的情况。
  2. 如果业务要求Score必须有有效值,你可以增加过滤逻辑,直接跳过Score为null的无效选项,避免渲染异常数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 10:45:03