Java 中 switch case 语句用来判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
语法格式如下:
Integer key=3;
switch (key){
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
break;
case 5:
System.out.println("5");
default:
System.out.println("default");
}
支持哪些类型:
-
基本数据类型:byte, short, char, int
-
字符串类型:String(Jdk 7+ 开始支持)
-
包装数据类型:Byte, Short, Character, Integer
-
枚举类型:Enum
使用 switch case 语句注意事项:
-
case 里面必须跟 break,不然程序会一个个 case 执行下去,直到最后一个 break 的 case 或者 default 出现。
-
case 条件里面只能是常量或者字面常量。
-
default 语句可有可无,最多只能有一个。
实例:
package com.study.switchtest;
import javafx.animation.Animation;
/**
* 基本数据类型:byte, short, char, int
*
* 包装数据类型:Byte, Short, Character, Integer
*
* 枚举类型:Enum
*
* 字符串类型:String(Jdk 7+ 开始支持)
*/
public class Switch {
public static void main(String[] args) {
/**
* case 里面必须跟 break,不然程序会一个个 case 执行下去,
* 直到最后一个 break 的 case 或者 default 出现。
*
* case 条件里面只能是常量或者字面常量。
*
* default 语句可有可无,最多只能有一个。
*/
/*************1:包装类型 Interger ************/
Integer key=3;
switch (key){
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
break;
case 5:
System.out.println("5");
default:
System.out.println("default");
}
/*************2:枚举 Enum ************/
Animation.Status status= Animation.Status.PAUSED;
switch (status){
case PAUSED:
System.out.println("PAUSED");
case RUNNING:
System.out.println("RUNNING");
case STOPPED:
System.out.println("STOPPED");
default:
System.out.println("default");
}
/*************3:String JDK1.7之后支持 ************/
String str="a";
switch (str){
case "a":
System.out.println("a");
break;
case "b":
System.out.println("b");
break;
case "c":
System.out.println("b");
default:
System.out.println("default");
}
}
}