黑马程序员技术交流社区

标题: 问下关于switch方面的问题。 [打印本页]

作者: 何桥    时间: 2014-12-12 22:17
标题: 问下关于switch方面的问题。
switch是否能作用在byte上,是否能作用在long上,是否作用在string上?
作者: songkaihua    时间: 2014-12-12 22:27
byte,short,int,char   JDK7是String   JDK5是枚举
作者: zcyemenye    时间: 2014-12-12 22:33
不能作用在long上,同上~
作者: 古月哥欠    时间: 2014-12-12 22:47
switch语句支持的数据类型是byte,short,int, char ;在5.0版本上支持enum ;7.0版本上支持String
作者: 慕容冰若    时间: 2014-12-12 22:52
能作用在byte上,不能作用在long上,JDK7.0支持string ,
作者: lwh316658735    时间: 2014-12-12 22:52
本帖最后由 lwh316658735 于 2014-12-12 22:53 编辑

能作用在int char short byte 上,好像后面的新特性添加了新的类型
作者: Jennifer    时间: 2014-12-13 00:00
在switch(exp)中,exp只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。显然,long和String类型都不符合switch的语法规定,并且不能被隐式转换成int类型,所以,它们不能作用于swtich语句中。
作者: Head    时间: 2014-12-13 00:09
byte,short,int,char
JDK5以后,可以是枚举
JDK7以后,可以是String类型。
作者: I空空    时间: 2014-12-16 23:20
以作用在by特上面,但是不常用。要看你的JDK版本了 JDK1.7可益作用在String上面。
作者: x277402301t    时间: 2014-12-18 00:19
在jdk7以后你说的都可以,以前只是int,shrot,byte,char。jdk5是枚举




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2