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

从Groovy对象列表中移除指定属性的最佳实现方式

最短实现方案

你示例中的初始化写法更符合Dart中Map<String, dynamic>类型的使用场景,对应最短实现仅需1行代码:

personList.forEach((item) => item.remove('age'));

该方法会直接遍历修改原列表内的每个Map对象,删除age键,不需要额外给personList重新赋值。


如果你的列表元素是自定义Person实体类,对应最短实现如下:

// 直接生成仅保留name属性的新对象列表
personList = personList.map((p) => Person(name: p.name)).toList();

// 若Person类实现了copyWith方法也可以这么写
personList = personList.map((p) => p.copyWith(age: null)).toList();

如果不想修改原列表数据,需要生成全新的Map结构列表,可以用以下写法:

personList = personList.map((p) => {'name': p['name']}).toList();

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 09:45:03