** 在 Ruby 中是什么意思?
例子
下面提到的代码片段并得到:
1 ** 5 # => 1
43 ** 67 # => 27694053307656599023809257877241042019569010395053468294153499816223586030238186389799480520831161107426185107
Run Code Online (Sandbox Code Playgroud)
问题
在 Ruby 中,**是指数运算符。即,通过这样做a**b,您提高a了 的幂b。按照惯例,操作数之间没有空格。
例子:
3**2
#=> 9
2**3
#=> 8
Run Code Online (Sandbox Code Playgroud)
请注意,指数运算符的优先级高于乘法和除法,就像在数学中一样:
2 * 2**3 # (2 * 8)
#=> 16
18 / 3**2 # (18 / 9)
#=> 2
Run Code Online (Sandbox Code Playgroud)
如果您链接运算符,则优先级将从右到左解析:
2**2**3 == 2**(2**3) # (2^8)
#=> true
Run Code Online (Sandbox Code Playgroud)
** 是指数运算符 - 它执行指数(幂)计算。让我通过这个简单的例子来解释一下
2 ** 2 => 2 * 2 => 4
2 ** 3 => 2 * 2 * 2 => 8
2 ** 4 => 2 * 2 * 2 * 2 => 16
2 ** 5 => 2 * 2 * 2 * 2 * 2 => 32
所以 43 ** 67 => 43 * 43 * 43 * 43 ...................................... ……………………
所以它会产生这么大的数字。
要获取有关操作符的更多详细信息,请访问http://www.tutorialspoint.com/ruby/ruby_operators.htm
| 归档时间: |
|
| 查看次数: |
2726 次 |
| 最近记录: |