Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中的变量值切换案例_Java_Switch Statement - Fatal编程技术网

Java中的变量值切换案例

Java中的变量值切换案例,java,switch-statement,Java,Switch Statement,我想做一个切换,其中5个案例在功能上是相同的,但接下来会有其他独特的案例。有没有一种方法可以列出处理5个不同值的大小写值?谢谢只要你不休息;在一个开关上,它将进入下一个语句 通过这种方式,您可以得到如下内容: String value(int val) { String out = ""; switch(val) { case 0: out = "case 0"; break; case 1: out = "case

我想做一个切换,其中5个案例在功能上是相同的,但接下来会有其他独特的案例。有没有一种方法可以列出处理5个不同值的大小写值?谢谢

只要你不休息;在一个开关上,它将进入下一个语句

通过这种方式,您可以得到如下内容:

String value(int val) {
    String out = "";
    switch(val) {
    case 0:
        out = "case 0";
        break;
    case 1:
        out = "case 1";
        break;
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
        out = "case 2, 3, 4, 5 or 6";
        break;
    case 7:
        out = "case 7";
        break;
    }
    return out;
}
switch(v) {

   case 1:
   case 2:
   case 3:
       identicFunctionality();
       break;
   case 4:
       other01();
       break;
   case 5:
       other02();
       break;
   default:
       _default();
}

只要你不休息;在一个开关上,它将进入下一个语句

通过这种方式,您可以得到如下内容:

String value(int val) {
    String out = "";
    switch(val) {
    case 0:
        out = "case 0";
        break;
    case 1:
        out = "case 1";
        break;
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
        out = "case 2, 3, 4, 5 or 6";
        break;
    case 7:
        out = "case 7";
        break;
    }
    return out;
}
switch(v) {

   case 1:
   case 2:
   case 3:
       identicFunctionality();
       break;
   case 4:
       other01();
       break;
   case 5:
       other02();
       break;
   default:
       _default();
}

可以在开关中合成标签

switch (variable) {
  case 'a': case 'b' : case 'c' : case 'd' :
     do something;
     break;
  case 'e': case 'f' :
     do something else
     break;
  default:
     do something;
}
switch (variable) {
  case 'a': case 'b' : case 'c' : case 'd' :
     do something;
     // note that there's no break here.
  case 'e': case 'f' :
     do something else
     break;
  default:
     do something;
}
把一个开关看作是一个标签的跳转,可能再加上一个跳转,这个跳转的中断会有帮助。这意味着开关

switch (variable) {
  case 'a': case 'b' : case 'c' : case 'd' :
     do something;
     break;
  case 'e': case 'f' :
     do something else
     break;
  default:
     do something;
}
switch (variable) {
  case 'a': case 'b' : case 'c' : case 'd' :
     do something;
     // note that there's no break here.
  case 'e': case 'f' :
     do something else
     break;
  default:
     do something;
}

将为“a”、“b”、“c”和“d”做一些事情和其他事情;而它只会对“e”和“f”执行其他操作。最后,如果不是上面的任何一个,它将点击默认的do something块。

您可以在开关中合成标签

switch (variable) {
  case 'a': case 'b' : case 'c' : case 'd' :
     do something;
     break;
  case 'e': case 'f' :
     do something else
     break;
  default:
     do something;
}
switch (variable) {
  case 'a': case 'b' : case 'c' : case 'd' :
     do something;
     // note that there's no break here.
  case 'e': case 'f' :
     do something else
     break;
  default:
     do something;
}
switch (value) {
case 1:
case 2:
case 3:
case 4:
    doSomethingIdentical();
    break;
case 5:
    doSomethingDifferent();
    break;
default:
    break;
}
把一个开关看作是一个标签的跳转,可能再加上一个跳转,这个跳转的中断会有帮助。这意味着开关

switch (variable) {
  case 'a': case 'b' : case 'c' : case 'd' :
     do something;
     break;
  case 'e': case 'f' :
     do something else
     break;
  default:
     do something;
}
switch (variable) {
  case 'a': case 'b' : case 'c' : case 'd' :
     do something;
     // note that there's no break here.
  case 'e': case 'f' :
     do something else
     break;
  default:
     do something;
}

将为“a”、“b”、“c”和“d”做一些事情和其他事情;而它只会对“e”和“f”执行其他操作。最后,如果不是上述任何一项,它将进入默认的do something块。

是的,只需使用如下开关:

String value(int val) {
    String out = "";
    switch(val) {
    case 0:
        out = "case 0";
        break;
    case 1:
        out = "case 1";
        break;
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
        out = "case 2, 3, 4, 5 or 6";
        break;
    case 7:
        out = "case 7";
        break;
    }
    return out;
}
switch (value) {
case 1:
case 2:
case 3:
case 4:
    doSomethingIdentical();
    break;
case 5:
    doSomethingDifferent();
    break;
default:
    break;
}
switch(v) {

   case 1:
   case 2:
   case 3:
       identicFunctionality();
       break;
   case 4:
       other01();
       break;
   case 5:
       other02();
       break;
   default:
       _default();
}

是的,只需使用如下开关:

String value(int val) {
    String out = "";
    switch(val) {
    case 0:
        out = "case 0";
        break;
    case 1:
        out = "case 1";
        break;
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
        out = "case 2, 3, 4, 5 or 6";
        break;
    case 7:
        out = "case 7";
        break;
    }
    return out;
}
switch(v) {

   case 1:
   case 2:
   case 3:
       identicFunctionality();
       break;
   case 4:
       other01();
       break;
   case 5:
       other02();
       break;
   default:
       _default();
}

这很容易做到。不要只使用一个case值来处理所有5个不同的值,而是让5个case值相互关联,如下所示:


switch(value)
{
    case 1:
    case 2:
        //case 1 and 2 will both result in this code being executed
        doSomething();
        break;
    case 3:
        doSomethingElse();
        break;
}

这很容易做到。不要只使用一个case值来处理所有5个不同的值,而是让5个case值相互关联,如下所示:


switch(value)
{
    case 1:
    case 2:
        //case 1 and 2 will both result in this code being executed
        doSomething();
        break;
    case 3:
        doSomethingElse();
        break;
}

从Java12开始,我相信它是受支持的。退房我从未使用过这种语法,但我认为对于您的案例,它会像这样运行

switch (day) {
    case 1, 2, 3, 4, 5    -> System.out.println("1-5");
    case 7                -> System.out.println(7);
    case 8                -> System.out.println(8);
    case 9                -> System.out.println(9);
}

另一方面,JEP也很酷。

从Java12开始,我相信它是受支持的。退房我从未使用过这种语法,但我认为对于您的案例,它会像这样运行

switch (day) {
    case 1, 2, 3, 4, 5    -> System.out.println("1-5");
    case 7                -> System.out.println(7);
    case 8                -> System.out.println(8);
    case 9                -> System.out.println(9);
}

另一方面,杰普也很酷。

这么多相同的答案,每个人都在争夺分数……这么多相同的答案,每个人都在争夺分数。。。