用于说
的java语法是什么如果x不等于a或b
我正在尝试写一个if else语句..如果某个值不等于说2或3然后做别的事情做其他的话:)这会让人困惑lol
答案 0 :(得分:13)
试试这个:
if (x != a && x != b) {
// Something (action x)
} else {
// Something else (action y)
}
请注意,即使您询问x是否等于或 b,它仍然是“和”条件,因为每个条件都是负数。另一种表示这种情况的方法(如果你发现它更具可读性)是:
if (!(x == a || x == b)) {
// Something (action x)
} else {
// Something else (action y)
}
此时你可能发现它更具可读性仍然可以摆脱否定,但转换你在块中所做的事情:
if (x == a || x == b) {
// Action y
} else {
// Action x
}
这三个代码块都做同样的事情,但我认为我发现最底层的代码最简单。
答案 1 :(得分:1)
if( x != a && x != b )
注意它是&&而不是||
条件( x != 2 || x != 3 )
总是为真:如果x = 2,则x!= 3且条件为真。如果x = 1,则x!= 2且条件为真。
你真正说的是:如果x不是2或3中的一个,即x不在数组[2,3]中,即“x不是2既不是3”,也就是{ {1}}。
答案 2 :(得分:1)
if ((x != a) && (x != b)) {
// do stuff
} else {
// do other stuff
}
答案 3 :(得分:1)
直接模仿英语句子:如果x不等于a或b
if (!(x == a || x == b))
{
doSomething();
}
else
{
somethingElse();
}
但如果额外的非操作者和括号伤害了你的眼睛,请使用它(注意在这种情况下没有单词Or,不再与英语句子平行):
if (x != a && x != b)
{
doSomething();
}
else
{
somethingElse();
}
在programmer's ignorance pet peeve和Is it acceptable to only use the ‘else’ portion of an ‘if-else’ statement?上看到我的回答,为什么我提倡构建简单的条件(直接模仿英语句子,即没有粘性AND和过多的NOT)
答案 4 :(得分:0)
if(x!=a && x!=b){
//do...
}
答案 5 :(得分:-2)
if((x!='a')||(x!='b'))//if a,b is char use quotes else avoid
{
//if expression is true
}
else
{
//if expression is false
}
如果您希望在x = a和x = b时执行该代码,则使用'&&'而不是' ||'。
更多详情: