我有這樣的解釋:增加值在字典與SWIFT
var dict = ["cola" : 10, "fanta" : 12, "sprite" : 8]
,我想添加值,例如有結果爲30,我該怎麼辦呢?換句話說,我怎樣才能添加數字,而不是單詞?
我有這樣的解釋:增加值在字典與SWIFT
var dict = ["cola" : 10, "fanta" : 12, "sprite" : 8]
,我想添加值,例如有結果爲30,我該怎麼辦呢?換句話說,我怎樣才能添加數字,而不是單詞?
As explained in the documentations here.您可以通過其方法和屬性或使用下標語法來訪問和修改字典。閱讀文檔。
var dict = ["cola" : 10, "fanta" : 12, "sprite" : 8]
要訪問您的字典中的值,可以使用標語法:
if let cola = dict["cola"] as? Int { // to read the value
// Do something
}
dict["cola"] = 30 // to change the value
dict["pepsi"] = 25 // to add a new entry to your dictionary
dict["fanta"] = nil // to delete the fanta entry.
在你的字典
var sum = 0
for (drinkName, drinkValue) in dict {
println("\(drinkName): \(drinkValue)")
sum += drinkValue
}
讀取所有的值,也可以
var sum = 0
for drinkValue in dict.values {
sum += drinkValue
}
由於答案有被接受,這不是一個很好的,我將不得不放棄蘇聯式的方法,並表現出更多的回答這個問題的主題方式。
鑑於你的詞典:
var dict = ["cola" : 10, "fanta" : 12, "sprite" : 8]
通過創建一個數組出dict.values
和減少他們
let sum = Array(dict.values).reduce(0, +)
或者你可以使用裸形式降低其沒有得到總和要求最初創建陣列:
let sum = reduce(dict.values, 0, +)
接受的答案d不使用迅速的力量
並且做的答案是過時的。
最簡單的更新的解決方案是:
let valuesSum = dict.values.reduce(0, +)
開始與零個,並總結所有元素
這是很容易的值。你不知道該怎麼做? – matt
我不知道它是不是聖誕節,但我沒有設法得到這個 – stack
但請證明你已經嘗試過_something_。我可以爲你寫代碼,但這不是Stack Overflow的目的。我想幫助你,而不是爲你做你的工作。 – matt