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

Flutter如何将List<List<dynamic>>转换为自定义IpcData类的实例列表

Flutter 数据转换实现方案

基础实现(无额外校验)

直接遍历原始二维数组,逐字段类型转换后生成IpcData实例即可:

List<IpcData> convertToIpcDataList(List<List<dynamic>> rawData) {
  return rawData.map((singleRow) => IpcData(
    singleRow[0].toString(),
    double.parse(singleRow[1].toString()),
  )).toList();
}

安全校验实现(避免脏数据崩溃)

如果需要兼容原始数据可能存在的字段缺失、格式错误等异常场景,可以加校验逻辑:

List<IpcData> convertToIpcDataList(List<List<dynamic>> rawData) {
  final List<IpcData> resultList = [];
  for (final row in rawData) {
    // 校验当前行数据长度是否符合要求
    if (row.length < 2) continue;
    try {
      final date = row[0].toString();
      final value = double.parse(row[1].toString());
      resultList.add(IpcData(date, value));
    } catch (_) {
      // 格式错误的行直接跳过,可根据业务需求调整异常处理逻辑
      continue;
    }
  }
  return resultList;
}

调用方式

假设你拿到的原始JSON格式化后的数据为rawIpcList,调用方法即可得到目标格式数据:

List<IpcData> targetList = convertToIpcDataList(rawIpcList);

内容的提问来源于stack exchange,提问作者Matías Baeza Graf

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 20:09:05