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

如何处理API返回的对象数组并逐行迭代展示每条记录内容

实现方案

现有代码存在三个可优化点:

  • 悬空的for循环无执行逻辑,属于无效代码可直接删除
  • 用$element[1]按索引取字段的方式不适用于JSON键值对结构,需要改为按tradename键名取值
  • 直接将JSON对象数组转Set会存在类型兼容问题,建议按实际业务字段做去重逻辑

可直接运行的实现代码

// 先做类型强转,确保拿到的是结构正确的JSON对象数组
List<Map<String, dynamic>> me3 = List<Map<String, dynamic>>.from(jsondata["message"]);

Set<String> existedTradenames = {};
premiumList.clear();

// 遍历数组逐行处理
for (var element in me3) {
  // 取对应tradename字段值,做空值兼容
  String tradeName = element["tradename"]?.toString() ?? "未知企业";
  // 不需要去重可以删掉下方两行去重判断
  if (existedTradenames.contains(tradeName)) continue;
  existedTradenames.add(tradeName);
  
  // 每个对象对应新增一个Property实例,单独展示为一行
  premiumList.add(Property(
    propertyName: "Company : $tradeName",
    propertyLocation: "SSN : 3001245"
  ));
}

如果你的SSN字段也是从JSON对象里取的,直接把propertyLocation的赋值改为element["ssn"]?.toString() ?? "无SSN"即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 10:54:01