Ruby字符串到运算符

ste*_*iel 12 ruby string operators

我有一个阵列

operator = ['+', '-', '*', '/']
Run Code Online (Sandbox Code Playgroud)

我想用它们以4种不同的方式解决方程式.我想它会是这样的:

operator.map {|o| 6 o.to_sym 3 } # => [9, 3, 18, 2]
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

Aru*_*hit 19

使用Object#public_send方法如下:

operator = ['+', '-', '*', '/']
operator.map {|o| 2.public_send o,2 }
# => [4, 0, 4, 1]
Run Code Online (Sandbox Code Playgroud)

使用Object#method和的另一种方式Method#call:

operator = ['+', '-', '*', '/']
operator.map {|o| 2.method(o).(2) }
# => [4, 0, 4, 1]
Run Code Online (Sandbox Code Playgroud)