2009-04-11 96 views
0

好的,我將JavaFX與Passion課程結合,並且遇到了一個我似乎無法解決的問題。JavaFX綁定/循環問題

它類似於這樣的問題 -

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}"); 
} 

和我的輸出 -

----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。我花了一些時間瀏覽程序,似乎無法找出它是如何/爲什麼這樣做的。

我可以讓它在沒有任何綁定的情況下運行很好,所以不知道這是什麼原因導致我的問題。

任何想法和想法?

〜阿倫

回答

3

currentNumber是數字的元素之一,而不是指數

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

是啊,今天早晨想通了這一點。男人,當你在疲倦的時候嘗試編碼時會發生這種情況。 :D感謝您的幫助! – Valien 2009-04-11 13:25:30