我希望以下内容评估(a < b)
以及(b < c)
并返回no
。
a = 1
b = 4
c = 3
@test = (a < b) and (b < c)
if @test
puts "yes"
else
puts "no"
end
我没有得到我期望的行为。它返回yes
,似乎只评估(a < b)
而不是(b < c)
。我认为问题出在and
。
答案 0 :(得分:5)
您使用and
代替&&
,实际上,您将@test
设置为(a<b)
的结果,而不是(a<b) and (b<c)
({{1}优先级高于=
,而and
的优先级高于&&
。)