2015-07-27 16 views
6

Vì vậy, tôi đang thực hiện một trò chơi đoán đơn giản và chương trình sẽ không thoát khỏi vòng lặp khi người dùng nhấn nút hủy. Đây là vòng lặpNút JOptionPane hủy bỏ sẽ không hủy bỏ khỏi cửa sổ?

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

    } 

Trả lời

9

nó phải được

while(playAgain == true){ 

hoặc

while(playAgain){ 

không gán [=] đúng với playagain so sánh sử dụng [==]. những gì bạn làm là chỉ định đúng cho playagain và sau đó kiểm tra xem có đúng không. Vì vậy, luôn luôn đúng

+1

Cảm ơn bạn! Bây giờ tôi cảm thấy như một kẻ ngốc câm vì đã phạm sai lầm đơn giản như vậy! – TheSuds13

+5

Hầu hết các lập trình viên sẽ thích tùy chọn thứ hai :-) – Manu