2014-09-24 20 views
-1

這是一個簡單的程序,它可以從用戶處獲得名和姓,並在它們之間打印一個空格,如果用戶輸入「END」而不是任何名字或姓氏!在這種情況下,我將它發佈給你,do-while循環中的條件不起作用。現在有什麼問題?do-while條件(OR)不起作用

import java.util.Scanner; 

public class EndExit { 
    public static void main(String[] args){ 


     Scanner in = new Scanner(System.in); 

     String name1; 
     String name2; 
     String end = "END" ; 


     do{ 
      System.out.println("Enter First Name:"); 
      name1 = in.next(); 
      System.out.println("Enter Last Name:"); 
      name2 = in.next(); 

      System.out.println(name1 + " " +name2); 

     }while(!(name1.equalsIgnoreCase(end)) || !(name2.equalsIgnoreCase(end))); 

     System.out.println("You are out!"); 
    } 
} 

回答

2

一個while條件將始終爲假,導致循環繼續。使用&&操作

} while(!(name1.equalsIgnoreCase(end)) && !(name2.equalsIgnoreCase(end))); 
+1

或者乾脆用一個爆炸,而不是兩個...'!(name1.equalsIgnoreCase(完)|| name2.equalsIgnoreCase(完))' – 2014-09-24 18:30:38

+0

感謝朋友。沒事。 – 2014-10-03 12:11:50