如果java中的语句

时间:2012-07-06 00:19:07

标签: java

这可能是一个简单的问题,但......

在java中,可以检查一个整数是否等于一个或另一个值而不重复变量检查..

e.g。这应该工作

int n = 0;
if ((n == 1) || (n == 2)) {
//do stuff
}

但是可以创建这样的东西吗?

int n = 0;
if (n == 1 || 0) {
//do stuff
}

3 个答案:

答案 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;
}

这可能听起来很滑稽,但我的意思是! caseif语句之间的差异通常只是代码在未来的演变方式。如果您真的只想在将变量设置为离散数量的值时执行某些操作,那么您应该使用case语句或enum s。