2018.1.4日记

对于上面一段伪代码的描述,大家可能会立刻想到用刚学过得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语句中的表达式只能是byteshortcharint类型的值,如果传入其它类型的值,程序会报错。但上述说法并不严谨,实际上在JDK5.0中引入的新特性enum枚举也可以作为switch语句表达式的值,在JDK7.0中也引入了新特性,switch语句可以接收一个String类型的值。

发布了38 篇原创文章 · 获赞 0 · 访问量 4250
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章