str 内のすべての文字の出現回数をカウントする関数を書きたいのですが、簡単そうに思えたので、これを思い付きました
def letter_count(str)
hash = {}
letters = str.gsub(' ','').split('')
letters.each do |letter|
if hash.include?(letter)
hash[letter] += 1
else
hash[letter] = 1
end
end
hash
end
letter_count('moon') => {"m"=>1, "o"=>2, "n"=>1}
に短縮しようとしたとき
def letter_count(str)
hash = {}
letters = str.gsub(' ','').split('')
letters.each do |letter|
hash[letter] += 1 if hash.include?(letter)
hash[letter] = 1
end
hash
end
答えは次のようになりました。
letter_count('moon') => {"m"=>1, "o"=>1, "n"=>1}
私が間違っていたことを教えてください。ありがとうございました!!!!!!!