Javaswitch语法的踩坑
在⼯作中⽤switch出了bug,所以发现原本我对switch的理解是不对的,我⼀开始以为swith是严格按照case⾥的选项来执⾏的,后来发现不是的:
1        String s = "come";
2switch (s){
3case "come":
4if (1 == 2){
5                    System.out.println("come output 1");
6                }else if (3 == 4){
7                    System.out.println("come output 2");
8                }
java switch case string9case "go":
10                System.out.println("go output");
11        }
结果输出的是"go output",也就是不只按case "come"⾥的执⾏
所以写switch⼀定要写个兜底语句来保险,不然容易出错。如这样兜底:
1        String s = "come";
2switch (s){
3case "come":
4if (1 == 2){
5                    System.out.println("come output 1");
6                }else if (3 == 4){
7                    System.out.println("come output 2");
8                }
9                System.out.println("come output 3");
10case "go":
11                System.out.println("go output");
12        }
Written on Dec. 20th, 2019

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。