面试题:switch语句能否作用在byte上,能否作用在long上,能否作用在String上?
/**
* 问题:switch语句能否作用在byte上,能否作用在long上,能否作用在String上
* 基本类型的包装类(如:Character、Byte、Short、Integer)
*
* switch可作用于char byte short int
* switch可作用于char byte short int对应的包装类
* switch不可作用于long double float boolean,包括他们的包装类
* switch中可以是字符串类型,String(jdk1.7之后才可以作用在string上)
* switch中可以是枚举类型
switch中可以是字符串类型,String(jdk1.7之后才可以作用在string上),源代码示例:
* 问题:switch语句能否作用在byte上,能否作用在long上,能否作用在String上
* 基本类型的包装类(如:Character、Byte、Short、Integer)
*
* switch可作用于char byte short int
* switch可作用于char byte short int对应的包装类
* switch不可作用于long double float boolean,包括他们的包装类
* switch中可以是字符串类型,String(jdk1.7之后才可以作用在string上)
* switch中可以是枚举类型
*/
switch可作用于char byte short int
switch可作用于char byte short int对应的包装类
switch不可作用于long double float boolean,包括他们的包装类,源代码示例:
package java基础题目;
public class Test5 {
public static void main(String[] args) {
// switch可作用于char byte short int
char season1 = 3;
byte season2 = 3;
short season3 = 3;
int season4 = 3;
// switch可作用于char byte short int对应的包装类
Character season11 = 3;
Byte season22 = 3;
Short season33 = 3;
Integer season44 = 3;
// 下面的基本类型的包装类就不行了,还有double float的包装类
// Long season = 0;
// switch不可作用于long double float boolean,包括他们的包装类
long season5 = 3;
double season6 = 3;
float season7 = 3f;
boolean season8 = false;
//......
String strSeason = "";
switch (season1) {
case 1:
strSeason = "Spring";
break;
case 2:
strSeason = "Summer";
break;
case 3:
strSeason = "Fall";
break;
case 4:
strSeason = "Winter";
break;
default:
strSeason = "四季中没有这个季节";
break;
}
System.out.println("strSeason:" + strSeason);
}
}
switch中可以是字符串类型,String(jdk1.7之后才可以作用在string上),源代码示例:
package java基础题目;
/*
* switch中可以是字符串类型
*String(jdk1.7之后才可以作用在string上)
*/
public class Test6 {
public static void main(String[] args) {
int season = 0;
String strSeason = "Summer";
switch (strSeason.toLowerCase()) {
case "spring":
season = 1;
break;
case "summer":
season = 2;
break;
case "fall":
season = 3;
break;
case "winter":
season = 4;
break;
default:
season = -1;// 没找到对应的季节
break;
}
System.out.println(strSeason + "-->" + season);
}
}
switch中可以是1.5枚举类型,源代码示例:
package java基础题目;
/*
* switch中可以是1.5枚举类型
*/
//枚举三个量
enum Signal{
GREEN,YELLOW,RED;
}
public class Test7 {
public static void main(String[] args) {
Signal color = Signal.RED;
switch (color) {
case RED:
color = Signal.YELLOW;
break;
case YELLOW:
color = Signal.RED;
case GREEN:
color = Signal.YELLOW;
default:
System.out.println("什么鬼灯");
break;
}
System.out.println("color:"+color);
}
}
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: 哪几种情况可以销毁session(一般有3种)
- 下一篇: Java中成员变量和局部变量的区别
