java中switch数据类型使用
/**
* switch表达式可以是byte,short,int,char以及他们的包装类型
* JDK5 :枚举
* JDK7 :字符串
* @author KouTian
*
*/
public class TestSwitch {
Gender gender;
String str;
Integer integer;
public TestSwitch(Gender gender) {
this.gender=gender;
}
public TestSwitch(String str) {
this.str=str;
}
public TestSwitch(Integer i) {
this.integer=i;
}
public void testEnum() {
//JDK8中switch使用枚举类型
switch (gender) {
case F:
System.out.println("女");
break;
case M:
System.out.println("男");
break;
default:
break;
}
}
public void testPrimitiveTypes() {
//byte,short,char能够使用,是因为它们能够隐式的转为int
//它们的包装类型也能使用,是因为能够自动拆箱为int
switch (integer) {
case 127:
System.out.println(integer);
break;
case 128:
System.out.println(integer);
break;
default:
break;
}
}
public void testString() {
//JDK7后才能使用
switch (str) {
case "hello":
System.out.println(str);
break;
case "world":
System.out.println(str);
break;
default:
break;
}
}
public static void main(String[] args) {
// TestSwitch t = new TestSwitch(Gender.F);
// t.testEnum();
// TestSwitch t = new TestSwitch(127);
// t.testPrimitiveTypes();
TestSwitch t = new TestSwitch("world");
t.testString();
}
}
enum Gender{
M,F;
}