Tôi có một đoạn mã trong Ruby mà đi như sau:thể một "if (a == b || c == b)" tuyên bố được thực hiện ngắn hơn trong Ruby
def check
if a == b || c == b
# execute some code
# b = the same variable
end
end
này có thể được viết như
def check
if a || c == b
# this doesn't do the trick
end
if (a || c) == b
# this also doesn't do the magic as I thought it would
end
end
Hoặc theo cách mà tôi không cần nhập b
hai lần. Đây là sự lười biếng và tôi muốn biết.
điều gì sai với '(a || c) == b'? Đó là imo ngược, như tôi đề nghị thử 'b == (a || c) '(theo sau các quy ước đại số boolean tốt hơn). – acolyte
@acolyte Trường hợp nào khi 'a = 1'' c = 0' 'b = 0'? –
@RyanAmos rồi b == c, do đó đánh giá có điều kiện là đúng. trừ khi ruby có một số ý nghĩa thay thế cho '||'. Tôi đã giả định rằng đứng cho hợp lý HOẶC. – acolyte