如何将List<String>转换为selected字段固定为false的List<Map<String,dynamic>>
Dart中List转List<Map<String,dynamic>>的实现方案
需求说明
将字符串列表的每一项转换为包含两个固定字段的Map:
name字段值为原字符串项的内容selected字段固定为false
实现方法
方法1:链式转换(最简写法)
使用Iterable.map遍历转换,代码简洁高效:
// 输入示例 List<String> stringList = ["one", "two", "three"]; // 转换逻辑 List<Map<String, dynamic>> mapList = stringList.map((str) => {"name": str, "selected": false}).toList();
方法2:循环遍历(灵活扩展)
如果后续需要添加额外的字段处理逻辑,可以用for循环实现:
// 输入示例 List<String> stringList = ["one", "two", "three"]; List<Map<String, dynamic>> mapList = []; for (final str in stringList) { mapList.add({ "name": str, "selected": false }); }
两种方法输出的结果都完全符合预期:
[ {"name": "one","selected": false}, {"name": "two","selected": false}, {"name": "three", "selected": false} ]
内容的提问来源于stack exchange,提问作者A_Bee
相关产品推荐
相关产品推荐

