【问题标题】:How to stop JOptionPane from choosing last case?如何阻止 JOptionPane 选择最后一个案例?
【发布时间】:2014-11-04 13:34:06
【问题描述】:

所以我的情况是缩短长代码。

假设我们有一个带有 3 个按钮的 JOptionPane。

boolean loopGameInterface = true;

while(loopGameInterface){

int chooseGame = JOptionePane........

   switch(chooseGame) {

   case 0:


   case 1:


   case 2:

    System.exit(0);

   }

}

所以问题是,当我单击(示例)第二个按钮时,它转到案例 1。这很好。但是当case 1里面的代码被执行时,它会直接进入case 2并退出我的程序,而不是仅仅循环gameInterface?

【问题讨论】:

    标签: java loops switch-statement case


    【解决方案1】:

    您需要在每个案例的末尾添加break;。顺便说一句,所有 switch 语句都是如此,而不仅仅是在您使用 JOptionPane 时

    【讨论】:

      【解决方案2】:
      switch(chooseGame) {
      
      case 0: /* Your code */
              break;
      case 1: /* Your code */
              break;
      case 2: 
              System.exit(0);
      
      default : "Give some default case too"
      
      }
      

      【讨论】:

        【解决方案3】:

        这是因为您没有添加break 语句。如果您不添加 break ,则将执行匹配的情况下的所有情况。例如:

        switch(ch) {
          case 1:
           /* some code without break */
          case 2:
           /* some code without break */
          case 3:
             System.exit(0);
        }
        

        在上面的例子中,如果ch=1 那么所有case 2 也将被执行,然后case 3。 如果ch=2 则只有case 2case 3 将被执行,因为case 3 低于case 2。所以你需要在每个案例之后添加break

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2020-04-04
          • 2019-08-08
          • 2014-09-09
          • 1970-01-01
          • 1970-01-01
          • 2021-11-10
          • 2015-07-03
          相关资源
          最近更新 更多