2009-04-11 9 views
0

私はJavaFX with Passionコースを受講していますが、私は理解できないような問題があります。JavaFXバインド/ループの質問

それはこの質問に似ています - 私がいる問題は、それが右のそれを除いて実行するように '見える' ということである

----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 

-

Why doesn't this "binding" code work as expected in 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}"); 
} 

と私の出力奇数として1を表示せず、10の後に0を追加します。プログラムをステップ実行するのに時間を費やし、どのようにして/なぜこれを行っているのかわからないようです。

私はそれが私の問題を引き起こしているかどうかわからないので、拘束なしで実行することができます。

アイデアやアイデアはありますか?

〜アレン

答えて

3

currentNumberは数字の要素の一つではなく、インデックス

var evenOrOdd = bind if (currentNumber mod 2 == 0) 
    "----{currentNumber} is an even number" 
    else "----{currentNumber} is an odd number"; 
+0

そうですが、今朝それを考え出しました。あなたが疲れている間にコードを作成しようとすると、それが起こります。 :D助けてくれてありがとう! – Valien