下面是Java中switch的三种用法方式小结的详细讲解:
标准的switch语句
switch (expression) {
case value1:
// 如果expression的值等于value1,则执行此处代码
break;
case value2:
// 如果expression的值等于value2,则执行此处代码
break;
default:
// 如果expression的值都不等于以上任何一个case的值,则执行此处代码
}
在标准的switch语句中,需要一个expression作为比较的基准,比较的值必须是char、byte、short、int或enum类型。每个case后面的值与expression进行比较,如果相等,则执行相应的代码块。如果没有任何一个case值与expression相等,则会执行default后面的代码块。
示例1:
int day = 2;
switch (day) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
default:
System.out.println("不存在的日期");
}
输出:
星期二
示例2:
enum Gender { MALE, FEMALE, UNKNOWN }
Gender gender = Gender.MALE;
switch (gender) {
case MALE:
System.out.println("男");
break;
case FEMALE:
System.out.println("女");
break;
default:
System.out.println("不确定");
}
输出:
男
用于字符串的switch语句
switch (stringExpression) {
case stringValue1:
// 如果stringExpression的值等于stringValue1,则执行此处代码
break;
case stringValue2:
// 如果stringExpression的值等于stringValue2,则执行此处代码
break;
default:
// 如果stringExpression的值都不等于以上任何一个case的值,则执行此处代码
}
在Java SE 7和更高版本中,可以使用字符串在switch语句中进行比较。
示例:
String fruit = "苹果";
switch (fruit) {
case "苹果":
System.out.println("红皮");
break;
case "香蕉":
System.out.println("黄皮");
break;
default:
System.out.println("未知类型");
}
输出:
红皮
无条件执行一个代码块
switch (expression) {
case value1:
case value2:
// 如果expression的值等于value1或value2,则执行此处代码
break;
}
在某些情况下,我们只需要在expression等于某几个值时执行同一个代码块,这个时候可以使用无条件执行一个代码块的形式。case value1和case value2两条语句都将执行同一个代码块,直到遇到break语句或者代码块结束。
示例:
int number = 35;
switch (number) {
case 10:
case 20:
case 30:
System.out.println("这个数字是10、20或30");
break;
default:
System.out.println("这个数字不是10、20或30");
}
输出:
这个数字不是10、20或30
以上就是Java中switch的三种用法方式小结的攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java中switch的三种用法方式小结 - Python技术站