如何在Java中使用Switch语句?

时间:2015-07-14 21:48:53

标签: java

我需要在我的程序中输入一个开关声明,我想清楚地了解我可以在哪里打破并继续。它的休息时间,我不理解这段代码;我能得到一个低调的请求吗?我需要明确和更明智的解释。我已经搜索了这是我得到的但是没有回答我的问题我们在什么时候打破或继续这又是我所看到的。我需要链接; (Switch Statements

public class SwitchTrying {

   public static void main(String args[]){

      char grade = 'B';

      switch(grade)
      {
         case 'A' :
            System.out.println("Excellent!"); 
            break;
         case 'B' :
         case 'C' :
            System.out.println("Well done");
            break;
         case 'D' :
            System.out.println("You passed");
         case 'F' :
            System.out.println("Better try again");
            break;
         default :
            System.out.println("Invalid ");
      }
      System.out.println("You got : " + grade);
   }
}

3 个答案:

答案 0 :(得分:0)

您需要在每个案例块的末尾休息一下。否则,匹配后的每个case块都将被执行,直到遇到中断。

答案 1 :(得分:0)

上面的Switch语句如下所示:

如果等级为" A",app打印"优秀"并从交换机声明中突破。

如果等级是B或C,则打印" Welldone"并从switch语句中突破。

如果等级为D,则打印"你通过"但由于没有休息,应用程序也会进入案例F(正下方D)并打印"最好再试一次"然后爆发。

如果等级为F,则应用打印"最好再试一次"然后爆发。

如果给出了Grade的任何其他值,App打印"无效"。

最后节目打印"你得到了:XX"

由于Grade在程序中是硬编码的,因此只有B分支有效。尝试将其转换为其他值以查看会发生什么。

干杯。

答案 2 :(得分:0)

有一个非常好的教程:

Switch Tutorial

您发布的代码没有任何问题。

但是,作为一个注释,“B”或“C”等级将产生相同的结果。在'B'的情况下缺少break语句会导致执行进入下一个case语句 - 即使条件不匹配。它的编写方式,就像一个“OR”语句。

值'D'将打印“你通过”以及“更好地再试一次”,这也是因为没有中断声明。

看一下教程。

祝你好运!