Java(4)switch选择结构

一、switch结构(开关语句)的语法

switch(表达式 ){--->类型为int、char

    case  常量1 :--->case 结构可以有多个

           //语句块1

           break;--->程序跳出switch结构

    case  常量n :--->常量的值不能相同

           //语句块n

           break;

    default:--->和if结构中的else作用相同

           //语句块

    break;

}

示例1:张三参加计算机编程大赛,如果获得第一名,将旅游一个月。如果获得第2名,将奖励一台笔记本电脑。如果获得第三名,将奖励一台手机。否则,没有任何奖励

 1 public class Practice1 {
 2     public static void main(String[] args){
 3         int mingci = 1; //名次
 4         switch (mingci ){
 5             case 1:
 6                 System.out.println("旅游一个月");
 7                 break;
 8             case 2:
 9                 System.out.println("奖励惠普笔记本电脑一部");
10                 break;
11             case 3:
12                 System.out.println("奖励移动硬盘一个");
13                 break;
14             default:
15                 System.out.println("没有任何奖励");
16         }
17     }
18 }
switch选择结构

 运行结果:如图:  

 1 public class Practice2 {
 2     public static void main(String[] args){
 3         int mingci = 1; //名次
 4         switch (mingci ){
 5             case 1:
 6                 System.out.println("旅游一个月");
 7             case 2:
 8                 System.out.println("奖励一台笔记本电脑");
 9             case 3:
10                 System.out.println("奖励一台手机");    
11             default:
12                 System.out.println("没有任何奖励");
13         }
14     }
15 }
practice2

没有写break的运行结果:如图:

注意:如果匹配到值,但没有执行break,那么从匹配到那个值的语句

开始,下面的每一个语句都会执行,直到整个程序结束或者遇到break.

二、switch结构使用场合:   int char  2种类型的等值判断下使用

三、switch结构和if结构的异同点

相同点:都可以实现等值判断

不同点:

1. 语法不同

2.使用的场合不同

  2.1 if结构,侧重于范围判断

     2.2  switch结构,侧重于等值判断,类型只能为int、char类型

3.效率

     3.1在等值判断中,switch结构效率高于if结构

四、 异常处理——hasNextInt();

判断是否为整数

if( input.hasNextInt( ) ) { // boolean类型

          //代码块

}

原文地址:https://www.cnblogs.com/-chaoming/p/6970195.html