0

OK、JavaFX with Passion コースを受講していますが、理解できない問題があります。

この質問に似ています-

この「バインディング」コードが JavaFX で期待どおりに機能しないのはなぜですか?

def numbers = [1..10];
var currentNumber = 0;    

for (currentNumber in numbers){
var evenOrOdd = bind if (numbers[currentNumber] mod 2 == 0)
    "----{numbers[currentNumber]} is an even number"
    else "----{numbers[currentNumber]} is an odd number";
println("{evenOrOdd}");
}

そして私の出力 -

----2 is an even number
----3 is an odd number
----4 is an even number
----5 is an odd number
----6 is an even number
----7 is an odd number
----8 is an even number
----9 is an odd number
----10 is an even number
----0 is an even number

私が抱えている問題は、1 が奇数として表示されず、10 の後に 0 が追加されることを除いて、正しく実行されているように見えることです。それがどのように/なぜこれをしているのかを調べてください。

束縛なしでうまく動作させることができるので、それが私の問題の原因であるかどうかはわかりません.

アイデア/考えはありますか?

〜アレン

4

1 に答える 1

3

currentNumberは、インデックスではなく、数値の要素の1つです。

var evenOrOdd = bind if (currentNumber mod 2 == 0)
    "----{currentNumber} is an even number"
    else "----{currentNumber} is an odd number";
于 2009-04-11T13:18:16.850 に答える