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

如何通过ID列表筛选类实例列表元素并生成指定格式的List<String>

Dart代码调整方案

核心修改点

  • 修正类属性访问逻辑:Dart中类实例属性不能用下标e['i']访问,改用点语法访问id属性e.id
  • 筛选后追加映射操作:调用map()方法将筛选得到的MyClass实例转换为对应的name字符串,最终转成List<String>类型
  • 修正name字段生成逻辑:去掉赋值时多余的大括号,匹配预期输出格式

修复后完整代码

class MyClass {
  late int id;
  late String name;
  
  MyClass({required this.id, required this.name});
  
}

List<MyClass> mcList = [];

void main() {
  
  List<int> list = [2,4,5];
  
  for(var i in [1,2,3,4,5]) {
    MyClass mc = MyClass(id: i, name: '$i name');
    mcList.add(mc);
  }
  
  List<String> result = mcList.where((e) => list.contains(e.id)).map((e) => e.name).toList();
  print(result);
   
}

运行输出

[2 name, 4 name, 5 name]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 22:15:05