如果有条件,每个条件都可以自己工作但不能一起

时间:2012-04-04 01:52:34

标签: java android if-statement

我自己测试了每个语句并且它有效,但是当我使用||时它忽略了!driver.getText()。toString()。equals(“”)语句的一部分。有什么想法吗?

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

3 个答案:

答案 0 :(得分:1)

||运算符表示 - 因此,如果任一条件为真,则测试成功。如果您希望这两个条件都成立,请使用&&

更多阅读:http://docs.oracle.com/javase/tutorial/java/nutsandbolts/op2.html

答案 1 :(得分:0)

如果要执行条件的两个部分,请使用“|”运营商。即。

if(driver.getText().toString().length() > 0 | canDrive >= 0) 

但是,语句的左侧部分应始终执行:http://docs.oracle.com/javase/specs/jls/se7/html/jls-15.html#jls-15.24

答案 2 :(得分: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");
    }
}