2015-07-27 11 views
6

Quindi, sto facendo un semplice gioco di ipotesi, e il programma non uscirà dal ciclo quando l'utente preme il pulsante Annulla. Ecco il cicloIl pulsante di annullamento JOptionPane non si cancellerà dalla finestra?

while(playAgain = true){ 
     int n = JOptionPane.showConfirmDialog(null, fields, "Number guessing game", JOptionPane.CANCEL_OPTION); 

     if(n == JOptionPane.CANCEL_OPTION){ 
      playAgain = false; 
     } 

     int randomNumber = randomNumber(); 

     String guess = input.getText(); 
     compare(randomNumber, Integer.parseInt(guess)); 

    } 

risposta

9

dovrebbe essere

while(playAgain == true){ 

o

while(playAgain){ 

non assegnare [=] fedele al playagain confronto uso [==]. quello che fai è assegnare true per playagain e quindi controllare è vero. Quindi è sempre vero

+1

Grazie! Ora mi sento un idiota per aver fatto un errore così semplice! – TheSuds13

+5

La maggior parte dei programmatori preferirebbe la seconda opzione :-) – Manu