0
我是編程新手,並試圖理解爲什麼操作符幾乎總是用於添加,在Ruby中追加散列鍵值對。爲什麼添加運算符會添加散列鍵值對?
下面的代碼片段是從務實工作室紅寶石課程:
letters = {"c" => 3, "e" => 1, "l" => 1, "n" => 1, "t" => 1, "x" => 8, "y" => 4}
point_totals = Hash.new(0)
"excellently".each_char do |char|
point_totals[char] += letters[char]
end
puts point_totals
puts point_totals.values.reduce(0, :+)
輸出
{"e"=>3, "x"=>8, "c"=>3, "l"=>3, "n"=>1, "t"=>1, "y"=>4}
23
爲什麼語言使用+=
代替<<
?
'<<'還附加到'String' – engineersmnky 2014-10-09 21:00:33
所以基本上,這就像一個字符串的map方法嗎? – nipponese 2014-10-09 21:27:57
不確定你的意思。當你想在每個元素上應用一個函數並生成一個新的數組時,會使用'map'。您的代碼基本上會計算字符串中每個字符的總點數。 – rohit89 2014-10-09 21:37:19