黑马程序员技术交流社区

标题: 基础题目 求指教 [打印本页]

作者: 杨华东    时间: 2012-10-9 13:57
标题: 基础题目 求指教
switch语句能否作用在byte上,能否作用在long上,能否作用在String?
作者: 唐增友    时间: 2012-10-9 14:05
能作用在 byte上 能作用在long上
不能直接作用在 string 上
但可以通过hashcode比较
作者: 葬天    时间: 2012-10-9 14:07
switch 后允许的数据类型Integer(int),Byte(byte), Short(short)和Character(char)
,jdk 5.0加入枚举,
jdk 7.0加入String;
作者: 打工人    时间: 2012-10-10 07:22
不是说switch(),这个格式,小括号内只能是byte、shrot、int、char这四种类型吗??

作者: 打工人    时间: 2012-10-10 07:36
我百度了一下下,switch后面的小括号内确实不能是string和long这两种类型的
作者: 陈俊来    时间: 2012-10-10 12:18
在switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。显然,long和String类型都不符合sitch的语法规定,并且不能被隐式转换成int类型,所以,它们不能作用于swtich语句中。




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