2012-04-04 45 views
0

我測試了每個語句本身和它的作品,但當我使用||它忽略!driver.getText()。toString()。equals(「」)語句的一部分。有任何想法嗎?如果有條件的每個條件在自己的工作,但不是在一起

if((!driver.getText().toString().equals(""))|| (canDrive>=0)) 
+1

您可以通過使用使這一點清潔'String.isEmpty()'而不是'等於(「」)' – ulmangt 2012-04-04 01:54:57

+1

的LHS總是會評估 - 你確定這是實際的代碼? – 2012-04-04 01:57:54

+0

你是什麼意思它「忽略'!driver.getText()。toString()。equals(」「)'」部分? – 2012-04-04 01:58:51

回答

1

||的操作裝置 - 所以,如果任一條件爲真,測試成功。如果你想要兩個條件都成立,請使用&&

更多閱讀:http://docs.oracle.com/javase/tutorial/java/nutsandbolts/op2.html

+0

謝謝,我覺得自己像個白癡。 – Aaron 2012-04-04 02:03:55

+0

@Aaron - 沒問題。鏈接是Java Tutorials,這是開始Java的一個很好的資源。 – 2012-04-04 02:04:57

0

如果編譯器發現canDrive> = 0比defiitely因爲你使用||它會忽略的條件 其餘部分(或)條件所以這將發生,

其他明智的完美,

我曾嘗試查看代碼。

class test{ 
    public static void main(String[] arr){ 
    String str = TestString"; 
    int canDrive = 1; 
    if(!str.toString().equals("") || canDrive >=0) 
     System.out.println("pass"); 
     else 
     System.out.println("fail"); 
    } 
}