如何使用switch语句?

时间:2017-04-19 11:30:58

标签: java

当我尝试处理特殊情况时,使用switch语句时遇到问题。例如,我有3个案例:A,B,C。

对于A,我想做statement_1和statement_3。 对于B,我想做statement_2和statement_3。 对于C,我什么都不想做 如果我使用if-else语句,它将如下所示:

if ( not Car){
    do statement_3

   if Bag
      do statement 2
   else if Apple
      do statement 1

 }

当我尝试从switch语句中做到这一点时遇到麻烦

switch (variable){
  case A:  do statement_1
  case B: do statement_2
// how to do statement 3 here?  
}

3 个答案:

答案 0 :(得分:1)

默认部分处理未由其中一个case语句显式处理的所有值。

switch(var){
    case A:
        //do stuff
        break;
    case B:
        //do stuff
        break;
    default:
        //do stuff
        break;
}
编辑:我刚刚再次阅读了这个问题,我想我理解你了,如果你想“为A和statement_2做一个statement_1和statement_3,为B做一个statement_3”,你只需要写一下:

switch(var){
    case A:
        statement_1
        statement_3
        break;
    case B:
        statement_2
        statement_3
        break;
}

答案 1 :(得分:0)

我猜你忘了添加一个break语句。例如,如果expression == A并且您没有中断,则将执行所有语句,而如果添加break,则不会执行其余的情况。此外,默认值是在表达式不满足任何情况时执行的默认值。

switch(expression){
    case A:
        statement_1
        statement_3
        break;
    case B:
        statement_1
        statement_2
        break;
    default:
        break;
}

答案 2 :(得分:0)

对于每种情况,您必须编写所有必需的“语句”,然后添加break;,否则下一个案例也将被执行:

switch (variable) {
    case A:  
        statement_1;
        statement_3;
        break;
    case B: 
        statement_2;
        statement_3;
        break;
    case C:  
    default: 
        break;    
}

此处默认情况和C案例相同且无效。