2012-03-11 49 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"