![](/img/trans.png)
[英]Display only map key from List<Map<String, List<String>>>
[英]get key from Map<String,List<String>> knowing one of the List values
我有一個 map
Map<String, List> map1 = {a: [1,2,3,4], b: [5,6,7,8], c: [9,10,11]};
我知道其中一個列表的值之一 - 1..11。 如何獲取該值所屬的 map 實體的密鑰 - a、b、c?
我找到了解決方案
int valueToLookFor = 5;
String keyName = map1.keys.firstWhere((key) => map1[key].contains(valueToLookFor));
試試這個,其中search
是你試圖在數組中找到的值。
請注意,如果在任何地方都找不到該值,那么firstWhere
可能會給您一個錯誤。
void main() {
final data = {
'a': [1, 2, 3, 4],
'b': [5, 6, 7, 8],
'c': [9, 10, 11]
};
final search = 4;
final selected = data.keys.firstWhere((key) {
return data[key]!.contains(search);
});
print(selected); // a
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.