我有一个哈希值,所有值都是数组。所以它看起来像下面这样:Ruby + =操作抛出错误
my_hash = {:key => ["some string", "some string"],
:other_key => ["some string"]}
现在我想在这个散列中的所有字符串的计数。
所以我做:
my_hash.each_value do |value|
string_count += value.count
end
但我得到的错误:undefined method '+' for nil:NilClass
但我的价值数组是永远为零...... 例如,当我做的:
my_hash.each_value do |value|
puts value.count
end
我得到:
2
1
2
2
2
etc.
那么我做错了什么? Thx in advance :)
'value'其实是一对,你应该解压'(键,值)' – tokland
啊!我没有发现OP中的“each_value”(假设为“each”)。编辑以反映更正。谢谢! – Pavling