全国咨询/投诉热线:400-618-4000

Java中switch条件语句的用法

更新时间:2019年07月03日15时17分 来源:传智播客 浏览次数:

Java中switch条件语句也是一种很常用的选择语句,和if条件语句不同,它只能针对某表达式的值做出判断,从而决定程序执行哪一段代码。例如,在程序中使用数字1~7表示星期一到星期日,如果想根据某个输入的数字来输出对应中文格式的星期值,可以通过下面的一段伪代码来描述。

用于表示星期的数字:
如果等于1,则输出星期一
如果等于2,则输出星期二
如果等于3,则输出星期三
如果等于4,则输出星期四
如果等于5,则输出星期五
如果等于6,则输出星期六
如果等于7,则输出星期日

 
对于上面一段伪代码的描述,大家可能会立刻想到用刚学过得if… else if…else语句来实现,但是由于判断条件比较多,实现起来代码过长,不便于阅读。Java中提供了一种switch语句来实现这种需求,在 switch语句中使用 switch关键字来描述一个表达式,使用case关键字来描述和表达式结果比较的目标值,当表达式的值和某个目标值匹配时,会执行对应case下的语句。具体实现伪代码如下:
 
switch(用于表示星期的数字){
         case 1:
         输出星期一;
         break;
         case 2:
         输出星期二;
         break;
         Case 3:
         输出星期三;
         break;
         case 4:
         输出星期四;
         break;
         case 5:
         输出星期五;
         break;
         case 6:
         输出星期六;
         break;
         case 7:
         输出星期日;
         break
}
 

上面改写后的伪代码便描述了 switch语句的基本语法格式,具体如下:

switch(表达式){
         case 目标值1:
         执行语句 1
         break;
         case目标值 2:
         执行语句 2
         break;
         ·
         ·
         ·
         case目标值n:
         执行语句n
         break;
         default:
         执行语句 n+1
         break;
}


在上面的格式中, switch语句将表达式的值与每个case中的目标值进行匹配,如果找到了匹配的值,会执行对应case后的语句,如果没找到任何匹配的值,就会执行 default后的语句。 switch语句中的 break关键字以后再具体介绍,此处,初学者只需要知道 break的作用是跳出 switch语句即可。
需要注意的是,在 switch语句中的表达式只能是byte、short、char、int类型的值,如果传入其他类型的值,程序会报错。但上述说法并不严谨,实际上在JDK5.0中引入的新特性enum枚举也可以作为 switch语句表达式的值。在JDK7.0中也引入了新特性,switch语句可以接收一个 String类型的值。关于这两个新特性此处不便进行详细讲解,感兴趣的同学可以通过查阅官方资料进行自学。接下来通过一个案例演示根据数字来输出中文格式的星期,例如:Example10.java。

 
public class Examplel0{
         public static void main(String[] args){
                   int week=5;
                   switch(week){
                   case 1:
                            system.out.print1n("星期一");
                            break;
                   case 2:
                            system.out.print1n("星期二");
                            break;
                   case 3:
                            system.out.print1n("星期三");
                            break;
                   case 4:
                            system.out.print1n("星期四");
                            break;
                   case 5:
                            system.out.print1n("星期五");
                            break;
                   case 6:
                            system.out.print1n("星期六");
                            break;
                   case 7:
                            system.out.print1n("星期日");
                            break;
                   default:
                            system.out.print1n("输入法人数字不确定");
                            break;
                   }
         }
}



在使用 switch语句的过程中,如果多个case条件后面的执行语句是一样的,则该执行语句只需书写一次即可,这是一种简写的方式。例如,要判断一周中的某一天是否为工作日,同样使用数字1~7来表示星期一到星期日,当输入的数字为1、2、3、4、5时就视为工作日,否则就视为休息日。接下来通过一个案例来实现上面描述的情况,如下面所示。案例:Example11.java。

 
public class Examplel0{
         public static void main(String[] args){
                   int week=5;
                   switch(week){
                   case 1:
                   case 2:
                   case 3:
                   case 4:
                   case 5:
                            //当week满足值1、2、3、4、5中任意一个时,处理方式相同
                            system.out.print1n("今天是工作日");
                            break;
                   case 6:
                   case 7:
                            //当week满足值6、7中任意一个时,处理方式相同
                            system.out.print1n("今天是休息日");
                            break;
                   }
         }
}


以上我们介绍了,java中上午switch条件语句的用法,如果您在学习java过程中还有其他问题,您可以点击java视频教程免费下载java视频教程,也可以点击咨询按钮,获得帮助。

推荐阅读:
java常量有哪些


javaee

python

web

ui

cloud

test

c

netmarket

pm

Linux

movies

robot

uids

北京校区

    14天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    20天免费试学

    基础班入门课程限时免费

    申请试学名额

    8天免费试学

    基础班入门课程限时免费

    申请试学名额

    20天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    0天免费试学

    基础班入门课程限时免费

    申请试学名额

    12天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    10天免费试学

    基础班入门课程限时免费

    申请试学名额