如何在Ruby中动态使用参数作为运算符?

时间:2014-05-11 17:07:40

标签: ruby dynamic parameters

我要添加或减去

所以我作为参数传递'动作'

如何a 'action' ba+b

a-b

我尝试了eval,但没有运气,undefined method 'action'

2 个答案:

答案 0 :(得分:4)

使用send

action = "+"
a.send(action, b)

答案 1 :(得分:1)

Eval适合我。

2.0.0p247 :006 > action = '+'
 => "+"
2.0.0p247 :007 > eval("5 #{action} 2")
 => 7