我有一本字典,我想轉換每個項目的值,但保留原始字典的機智。這就是我要做的:如何使用地圖在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