I want to either add or subtract

so I pass in 'action' as a paramater

How do I do a 'action' b for a+b or a-b

I tried eval but no luck, undefined method 'action'

有帮助吗?

解决方案

Use send.

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

其他提示

Eval works for me.

2.0.0p247 :006 > action = '+'
 => "+"
2.0.0p247 :007 > eval("5 #{action} 2")
 => 7
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top