当前位置:   article > 正文

【自学Java】Java switch语句

java switch语句

Java switch语句

Java switch语句教程

Java 语言 中如果遇到多选一的场景,可以使用 switch 将其简化,让程序更加简洁易懂。switch 语句可以被 if…else 代替。它里面包含 switch、case、default 和 break 关键字。

switch 中存放的是对应的被比较的值,case 里面是条件,default 表示不符合所有的 case 条件的语句,在 default 里面都可以执行,break 表示终止条件判断,跳出当前的 switch。

Java switch语句详解

语法

switch(condition){
  case value1:
      //do something
       break;
  case value2:
      //do something
       break;
    ......
  default:
      // do something;
       break;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

参数

参数描述
conditionswitch 条件判断使用的关键字
condition表达式的值,类型可以是 byte,short,int,char,枚举,String
case比较关键字,将其后面的值与 condition 比较
value1对具体的数值判断,如果和 condition 值相等,就执行里面的操作
break跳出当前 switch 语句的关键字,如果没有,当前符合的条件后面执行语句都会执行
default前面 case 都不满足条件时,会在 default 里面执行

案例

正常的拥有break语句

package com.haicoder.net.basic;

public class SwitchTest {
    public static void main(String[] args) {
        System.out.println("嗨客网(www.haicoder.net)");

        String param = "haicoder";
        switch (param) {
            case "hello":
                System.out.println("hello world");
                break;
            case "haicoder":
                    System.out.println("hello haicoder");
                break;

            default:
                System.out.println("haicoder , 嗨 code");
                break;
        }

    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

运行结果如下:

请添加图片描述

例子中,我们用了 String 类型的字符串作为条件进行比较。因为 param 和 第二个 case 的条件一样,所以就在控制台中打印出 hello haicoder

错误使用没有break语句

package com.haicoder.net.basic;

public class IfTest {
    public static void main(String[] args) {
        System.out.println("嗨客网(www.haicoder.net)");

        String aa = "haicoder";
        switch (aa) {
            case "hello":
                System.out.println("hello world");
            case "haicoder":
                    System.out.println("hello haicoder");
            case "coder":
                System.out.println("hi coder");
            default:
                System.out.println("haicoder , 嗨 code");
        }

    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

运行结果如下:

请添加图片描述

我们在 case 里面忘记了使用 break,因为在 第二个 case 处就符合条件了,所以第二个 case 之后就不会判断是否相等,默认都认为条件成功,将一直执行下去,直到遇到 break 为止。上面的语句效果和下面一样:

package com.haicoder.net.basic;

public class IfTest {
    public static void main(String[] args) {
        System.out.println("嗨客网(www.haicoder.net)");

        String aa = "haicoder";
        switch (aa) {
            case "hello":
                System.out.println("hello world");
            case "haicoder":
            case "coder":
                System.out.println("hello haicoder");
                System.out.println("hi coder");
                System.out.println("haicoder , 嗨 code");
        }

    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

Java语言switch总结

上面的例子中,switch 语句可以用 if…else 语句来替换,感兴趣的同学可以试一下,我们在使用过程中一定要合理使用 break 关键字,如果这个关键字使用不合理,就会给程序执行带来意想不到的结果。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/数据流舞者/article/detail/62354
推荐阅读
相关标签
  

闽ICP备14008679号