gpt4 book ai didi

通过 map 函数将 Dart 映射到另一个 map

转载 作者:行者123 更新时间:2023-12-03 04:14:03 25 4
gpt4 key购买 nike

假设我有一张 map :

Map<String, int> source = {'a':1, 'b':2, 'c':3};

我想得到这个:

Map<String, int> expected = {'a': 1, 'b':4, 'c':9 };

我想用map函数实现结果:

Map<String,int> actual = source.map((key,value)=> {key: value * value});

但是,我得到了这个错误:

The return type 'Map<String, int>' isn't a 'MapEntry<String, int>', as required by the closure's context

难道我们不能用map的map函数来得到另外一张这样的 map 吗?

最佳答案

映射方法应该返回一个 MapEntry 实例,因为您可以更改键和值。所以你的代码应该是这样的:

void main() {
final source = {'a': 1, 'b': 2, 'c': 3};
final actual = source.map((key, value) => MapEntry(key, value * value));
print(actual); // {a: 1, b: 4, c: 9}
}

关于通过 map 函数将 Dart 映射到另一个 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62024044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com