Pergunta

Ok, eu estou tomando o JavaFX com curso Paixão e tem um problema que eu não consigo descobrir.

É semelhante a esta pergunta -

Por que não esta "ligação" código trabalho conforme o esperado no 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}");
}

e minha saída -

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

O problema que estou tendo é que ele parece "para executar direito senão ele não exibir 1 como um número ímpar e, em seguida, ele adiciona um 0 após a 10. Passei algum tempo stepping através do programa e pode' t parecem descobrir como / por que ele está fazendo isso.

Eu posso fazê-lo funcionar muito bem sem qualquer ligação então não tenho certeza se isso é o que está causando o meu problema.

Todas as idéias / pensamentos?

~ Allen

Foi útil?

Solução

currentNumber é um dos elementos de números, não o índice

var evenOrOdd = bind if (currentNumber mod 2 == 0)
    "----{currentNumber} is an even number"
    else "----{currentNumber} is an odd number";
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top