2014-12-05 39 views
0

如何在没有其他版画这一说法检查值应该只有0或1,仅使用if块

String val ="0"; 
if(val.equals("0") || val.equals("1")) 
{ 
    // Do nothing 
}else{ 
    System.our.println("Value should be either 0 or 1"); 
} 
+0

检查[德摩根法律](https://en.wikip edia.org/wiki/De_Morgan%27s_laws)。 – 2014-12-05 07:11:01

+0

谁会upvote这??这个问题是非常微不足道的,问题隐约说明。 – Radiodef 2014-12-05 07:11:17

+0

@Radiodef,它可能是,但突然间,我不能这个逻辑一点困惑,这是我张贴。现在我很清楚... – 2014-12-05 07:14:10

回答

3
String val ="0"; 
if(!val.equals("0") && !val.equals("1")) 
{ 
    System.our.println("Value should be either 0 or 1"); 
} 
+0

if(!(val.equals(“0”)|| val.equals(“1”))如果你懒惰,否定你已有的东西而不必去思考 – 2014-12-05 07:12:31

2

以下条件将这样的伎俩:

if(!val.equals("0") && !val.equals("1")) 
{ 
    System.our.println("Value should be either 0 or 1"); 
} 
1

的答案确实如下:

if(!val.equals("0") && !val.equals("1")) 
{ 
    System.our.println("Value should be either 0 or 1"); 
} 

但是,你如何得到它呢?你想输入你的陈述的else分支,所以你否定它。

val.equals()否定变成!val.equals()

按道理OR否定变得AND(反之亦然),因此:||成为&&

2

如果你想使用||运营商在你的问题中提到要实现它,然后,只需添加!符号在开始,

String val ="0"; 
if(!(val.equals("0") || val.equals("1"))){ 
    System.our.println("Value should be either 0 or 1"); 
} 
相关问题