哈希的+ =方法的名称是什么?

时间:2014-01-09 12:52:38

标签: ruby

我想改写一下:

my_hash['a'] += 5

就像这样:

my_hash. send (:[]+=, 'a', 5)

:[]+=无效。

有办法做到这一点吗?

2 个答案:

答案 0 :(得分:3)

怎么样:

my_array.send(:[]=, 'a', my_array['a'] + 5)

答案 1 :(得分:2)

这是语法糖:

my_array['a'] = my_array['a'] + 5

因此该方法在元素(不是数组)上是+,在数组本身上是[][]=。 (或者更准确地说,在哈希上。)