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

如何在嵌套Map中筛选并返回完整的Map元素

嵌套Map筛选并返回完整键值对的解决方法

你的代码目前仅筛选出了符合条件的Map键,所以输出只有键字符串。要返回包含完整键值对的Map,需要调整实现逻辑:

原代码问题点

  • 重复声明了temp变量,会导致语法错误
  • where方法的语法书写错误(箭头函数位置不对)
  • 仅对键进行筛选,未构建包含对应值的新Map

修正后的代码

Map<String, Map<int, int>> temp = {
  "Basic Terms": {1: 0},
  "Table and Column Naming Rules": {1: 1}
};

// 筛选键中包含"basic"的条目,转换为新Map
var filteredTemp = Map.fromEntries(
  temp.entries.where((entry) => entry.key.toLowerCase().contains("basic"))
);

print(filteredTemp);

代码说明

  • 用temp.entries获取Map的所有键值对条目,而非单独的键集合
  • 通过where筛选条目时,用toLowerCase()实现不区分大小写的匹配(如果需要严格区分大小写,去掉即可)
  • Map.fromEntries将筛选后的条目集合转换成新的Map,保留完整的键值对结构

输出结果

I/flutter (30857): {Basic Terms: {1: 0}}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 07:50:48