2012-03-11 50 views
1

我有這樣的代碼:Java輸入/輸出掃描器類和交互潘內爾

Scanner sc = null; 
sc = new Scanner(System.in); 
System.out.println("Your final answer is? (Y/N)"); 
String answer = sc.next(); 
if(answer.equals("Y"){ 
//do sth 
} 
else if(answer.equals("N")){ 
//do sth else 
} 

萬一人不輸入「Y」或「N」我想這個問題被再次問到的答案是其中之一。這是我能做到的一種方式嗎?

回答

2
Scanner sc = new Scanner(System.in); 
String answer = null; 
boolean ask_again = true; 
do { 
    System.out.println("Your final answer is? (Y/N)"); 
    answer = sc.next(); 
    if(answer.equals("Y")){ 
     //do something when Yes 
     ask_again = false; 
    } 
    else if(answer.equals("N")){ 
     //do something when No 
     ask_again = false; 
    } 
    else { 
     ask_again = true; 
    } 
} while(ask_again == true); 
1
Scanner sc = new Scanner(System.in); 
String answer = new String(); 
do { 
    System.out.println("Your final answer is? (Y/N)"); 
    answer = sc.next(); 
} while((!answer.equals("Y")) && (!answer.equals("N"))); 
// do your bit here if "Y" or "N"