这可能是一个简单的问题,但......
在java中,可以检查一个整数是否等于一个或另一个值而不重复变量检查..
e.g。这应该工作
int n = 0;
if ((n == 1) || (n == 2)) {
//do stuff
}
但是可以创建这样的东西吗?
int n = 0;
if (n == 1 || 0) {
//do stuff
}
答案 0 :(得分:9)
不,你需要重复变量:
if (n == 1 || n == 2) {
// do stuff
}
答案 1 :(得分:2)
不可能直接在Java中执行此操作,但您可以编写一个可以轻松完成此操作的函数。
static boolean equalsAny(int n, int ... numbers)
{
for (int num : numbers)
if (n == num)
return true;
return false;
}
然后您需要做的就是if (equalsAny(n,1,2)) {/* do stuff */ }
答案 2 :(得分:1)
您正在寻找case
声明。
switch(n) {
case 1:
case 2:
// Do something.
break;
}
这可能听起来很滑稽,但我的意思是! case
和if
语句之间的差异通常只是代码在未来的演变方式。如果您真的只想在将变量设置为离散数量的值时执行某些操作,那么您应该使用case
语句或enum
s。