switch 语句能否作用在 byte 上,能否作用在 long 上,能否作用在 String上?
答:switch(exp),exp可以是int,byte,short,char,enum类型,在jdk1.7(包括1.7)之后可以支持String类型
package com.n5;
public class Demo {
public static void main(String[] args) {
int i = 1;
byte bt = 1;
short s = 1;
char c = 'a';
long l = 1;
String str = "a";
Mood mood = Mood.HAPPY;
switch (i) {
case 1:
System.out.println("ok");
break;
default:
break;
}
switch (bt) {
case 1:
System.out.println("ok");
break;
default:
break;
}
switch (s) {
case 1:
System.out.println("ok");
break;
default:
break;
}
switch (c) {
case 'a':
System.out.println("ok");
break;
default:
break;
}
switch (mood) {
case LOSE:
break;
case HAPPY:
System.out.println("ok");
break;
default:
break;
}
// switch (l) {
// case 1:
// System.out.println("ok");
// break;
// default:
// break;
// }
// switch (str) {
// case "a":
// System.out.println("ok");
// break;
// default:
// break;
// }
// ps:在jdk1.7之后支持String
}
}
enum Mood {
HAPPY, LOSE
}
输出结果:
ok
ok
ok
ok
ok
附件: