在编程中,switch
语句通常用于根据不同的情况执行不同的代码块。switch
语句可以作用于以下数据类型:
- 整数类型(如
int
、long
、short
等) - 字符类型(如
char
) - 枚举类型(Enumeration)
总结:byte,short,int,char,String,枚举,其余类型都不允许
但需要注意的是,不同的编程语言对于switch
语句支持的数据类型可能有所不同。一些编程语言还可以利用其他数据类型,如布尔类型、浮点数等,但这通常不是switch
语句的常规用法。因此,在具体使用switch
语句之前,请查阅相应编程语言的文档以了解其支持的数据类型。、
以下举两个例子:
1.int类型的示例
int num = 2;
switch (num) {
case 1:
System.out.println("数字是1");
break;
case 2:
System.out.println("数字是2");
break;
case 3:
System.out.println("数字是3");
break;
default:
System.out.println("数字不在范围内");
break;
}
如果num
的值为1,将输出"数字是1";如果num
的值为2,将输出"数字是2";如果num
的值为3,将输出"数字是3";如果num
的值不在1、2、3范围内,则会执行default
部分,输出"数字不在范围内"。
2.枚举类型的示例
enum Day {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY
}
Day day = Day.MONDAY;
switch(day) {
case MONDAY:
System.out.println("今天是星期一");
break;
case TUESDAY:
System.out.println("今天是星期二");
break;
case WEDNESDAY:
System.out.println("今天是星期三");
break;
case THURSDAY:
System.out.println("今天是星期四");
break;
case FRIDAY:
System.out.println("今天是星期五");
break;
case SATURDAY:
case SUNDAY:
System.out.println("今天是周末");
break;
default:
System.out.println("无效的日期");
break;
}
在这个示例中,我们定义了一个Day
枚举类型,它列出了一周中的每一天。
我们将day
变量设置为Day.MONDAY
,然后使用switch
语句根据day
的取值执行不同的代码块。
当day
的值为MONDAY
时,将输出"今天是星期一";
同理,当day
的值分别为TUESDAY
、WEDNESDAY
、THURSDAY
、FRIDAY
时,分别输出相应的星期几;
当day
的值为SATURDAY
或SUNDAY
时,输出"今天是周末";
如果day
的值不匹配任何情况,则执行default
部分,输出"无效的日期"。