java

xiaoxiao2021-02-28  90

本文为个人理解如果哪里有不对的地方请大家给出宝贵意见谢谢:

分为三种情况分析:

1.当没有break时,default 在第一位的情况  

例如:

switch (i) {                  default:                       System.out.println("默认");                 case 1:                       System.out.println("1");                  case 2:                          System.out.println("2");                case 3:                       System.out.println("3");               } 

当给定义i=1时,输出的结果为: 当结果为1时输出结果为 1,2,3 

当给定义i=2时,输出的结果为: 当结果为1时输出结果为 2,3

当给定义i=3时,输出的结果为: 当结果为1时输出结果为 3

当给定义i=4时,输出的结果为: 当结果为1时输出结果为 默认,1,2,3

总结:当i匹配到的时候它会走到匹配的位置,而且还会继续运行之后的代码,之后最后位置,当匹配不到是,他会都输出一遍

2.当没有break时,default 在中间时的情况  

例如:

switch (i) {                    case 1:                       System.out.println("1"); 

            default:                       System.out.println("默认");             case 2:                          System.out.println("2");                case 3:                       System.out.println("3");               } 

当给定义i=1时,输出的结果为: 当结果为1时输出结果为 1,默认,2,3 

当给定义i=2时,输出的结果为: 当结果为1时输出结果为 2,3

当给定义i=3时,输出的结果为: 当结果为1时输出结果为 3

当给定义i=4时,输出的结果为: 当结果为1时输出结果为  默认,,2,3

总结:当i匹配到的时候它会走到匹配的位置,而且还会继续运行之后的代码,之后最后位置,当匹配不到是,他会从default起到以下都输出一遍

3.当没有break时,default 在最下面时的情况  

例如:

switch (i) {                    case 1:                       System.out.println("1");              case 2:                          System.out.println("2");                case 3:                       System.out.println("3"); 

           default:                       System.out.println("默认");            } 

当给定义i=1时,输出的结果为: 当结果为1时输出结果为 1,2,3,默认 

当给定义i=2时,输出的结果为: 当结果为1时输出结果为 2,3,默认 

当给定义i=3时,输出的结果为: 当结果为1时输出结果为 3,默认

当给定义i=4时,输出的结果为: 当结果为1时输出结果为  默认

总结:当i匹配到的时候它会走到匹配的位置,而且还会继续运行之后的代码,之后最后位置,当匹配不到是,他只会输出default下的语句
转载请注明原文地址: https://www.6miu.com/read-46749.html

最新回复(0)