我有一本字典,我想转换每个项目的值,但保留原始字典的机智。这就是我要做的:如何使用地图在Swift中转换字典?
var someDict = [
"a": 1,
"b": 2,
"c": 3
]
func convert(value: Int) -> [String: Int] {
return someDict.map({
item in ????
}
}
然后我试图与该结束了:
convert(10) // Result: ["a":10, "b":20, "c":30]
convert(20) // Result: ["a":20, "b":40, "c":60]
convert(5) // Result: ["a":5, "b":10, "c":15]
someDict // Result: ["a":1, "b":2, "c":3]
我不是从documentation的语法明确本或者map
是正确的做法。任何帮助或建议将不胜感激!
看看http://stackoverflow.com/questions/24116271/whats-the-cleanest-way-of-applying-map-to-a-dictionary-in-swift – 2015-04-05 18:37:09
不完全重复 - 这个问题是“我如何映射键”,而这是“如何映射值”。这些问题之间有相当大的差异,因为映射键意味着改变条目的数量,而映射值不会......而且,这些值不必是可散列的。 – 2015-04-05 18:50:14
@AirspeedVelocity:如果我正确理解引用的问题,它是关于更改字典中每个键的值(具体来说:将每个键的值递增1),因此与此问题非常相似。此外,接受的答案显示了如何映射键和值(对于我来说,看起来与您的答案类似):map()应用于字典,以及从一组键/值对创建的新字典)。 - 如果我错了,纠正我,我会重新打开答案! – 2015-04-05 18:54:48