我是不是从根本上误解了 Ruby?我已经编写 Ruby 代码大约 2 年了,就在今天偶然发现了这个......
ruby-1.8.7-p249 > i = true and false
=> false
ruby-1.8.7-p249 > i
=> true
有人可以解释一下这里发生了什么吗?我确定它符合规范,但对我来说这似乎违反直觉......
最佳答案
操作符&&
和and
有不同的优先级,=
恰好介于两者之间。
irb(main):006:0> i = true and false
=> false
irb(main):007:0> i
=> true
irb(main):008:0> i = true && false
=> false
irb(main):009:0> i
=> false
irb(main):010:0>
第一个读作 (i = true) and false
,第二个读作 i = (true && false)
。
关于ruby - i = true and false 在Ruby 中是真的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2802494/