黑马程序员技术交流社区
标题: switch语句能否作用在byte,long和String上 [打印本页]
作者: 白龙马大魔王 时间: 2016-4-12 21:35
标题: switch语句能否作用在byte,long和String上
在switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。显然,long和String类型都不符合switch的语法规定,并且不能被隐式转换成int类型,所以,它们不能作用于swtich语句中。
作者: 郭春兴 时间: 2016-4-12 23:26
jdk1.7,String好像是可以的吧?
//基本数据类型可以接收byte,short,char,int
//引用数据类型可以接收枚举(JDK1.5)String字符串(JDK1.7)
作者: mischen 时间: 2016-5-12 22:03
好像说得有点道理
作者: Sj改变 时间: 2016-5-12 23:16
2楼说的对,面试的时候问到了我这个问题
作者: dujia121508394 时间: 2016-5-12 23:20
jdk1.7以后,switch后面的表达式也支持String类型的了
作者: SilentMax 时间: 2016-5-12 23:51
long 不可以,但是1.7以后String可以了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |