私は、次のルビーのコードブロックがあります。ここではなぜそれが偽である場合に条件を返さないか?
x = 1
loop do
x+=1
next unless (x % 2) == 0
puts x
break if x >=10
end
My output:
2
4
6
8
10
それがfalseの場合、つまりx%2があり、意味0以外の残りの部分に何かを与える(x % 2) ==0
でない限り、それはputs
を行う必要がありますが、すべての倍数2を含む2の値は、(x%2)==0
を真とします。私は文など何かを間違って解釈していますか?
'odd? 'のようなメソッドは、あなたの意図を伝えるのにかなり役立ちます。 '(x%2)== 0'はあなたが注意を払わなければ処理するのが難しいです。 – tadman