温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何在Java中使用switch

发布时间:2021-03-20 17:21:37 来源:亿速云 阅读:290 作者:Leah 栏目:编程语言

如何在Java中使用switch?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

java中有两个经常用于条件判断的方法,一个是if{}else{},另一个就是switch()了。总的来说因为switch可以直接一对一满足条件,不满足条件的情况是不会执行的的所以switch的效率会相对if{}else{}更高一些,而且这两个方法是可以无门槛互换的。

switch的使用:

  • 能用于switch判断的类型有:byte、short、int、char(JDK1.6),还有枚举类型,但是在JDK1.7后添加了对String类型的判断

  • case语句中少写了break,编译不会报错,但是会一直执行之后所有case条件下的语句而不再判断,直到default语句

  • 若果没有符合条件的case就执行default下的代码块,default并不是必须的,也可以不写

switch(mark) {
      case 0:
        System.out.println(mark);
  break;
      case 10:
        System.out.println(mark);
     break;
      case 20:
        System.out.println(mark);
        break;
      }

这里mark值是判断条件,case 对应的是具体的值,如果mark=0或者mark=10或者mark=20,相对应的条件成立就会执行case中的程序

在这里有一个思维误区很容易出错,看下面代码:

switch(mark) {
      case 0:
        System.out.println(mark);
        mark = 10;
        break;
      case 10:
        System.out.println(mark);
        mark = 20;
        break;
      case 20:
        System.out.println(mark);
        mark = 30;
        break;
      }

这段代码比和上面的代码相比,在每个case中会重新给mark赋值,让这个重新赋的值和下一步的case相对应。

错误思维:如果mark的初始值是0,这个switch程序会执行三次,执行的顺序依次是0,10,20。

因为我们在每一步的case中都重新给mark赋值了,所以不熟悉的很容易就会觉得这个switch会从上往下执行,凡是满足条件的步骤都会执行。其实这个switch是只会执行一次的,因为每个case后面都跟了一个break,这个break的作用就是跳出当前循环也就是跳出当前的switch,所以这个switch只会执行mark初始值对应的那个case,后面的步骤不会继续执行。如果要想三个步骤都依次执行需要在switch外面加上一个while循环,在一定的条件内重复执行switch:如下加上while

while(mark<=30) {
      switch(mark) {
      case 0:
        System.out.println(mark);
        mark = 10;
        break;
      case 10:
        System.out.println(mark);
        mark = 20;
        break;
      case 20:
        System.out.println(mark);
        mark = 30;
        break;
      }
    }

关于如何在Java中使用switch问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI