switch case 表达式

java中switch case后接什么样的表达式呢

这是sun的官方解释:http://java.sun.com/docs/books/tutorial/java/nutsandbolts/switch.html

原文:" A switch works with the byte, short, char, and int primitive data types. It also works with enumerated types (discussed in Classes and Inheritance) and a few special classes that "wrap" certain primitive types: Character, Byte, Short, and Integer (discussed in Simple Data Objects )."

说是switch case 可以接byte、short、char、int等基本类型,当然也可以接枚举及枚举的衍生类,和基本类型的包装类

Byte、Short、Character、Integer,这是截至到JDK1.6是这样的,到JDK1.7可以支持String这个特殊类型了

如果用到包装类的话,那么就得注意了,e.g:

switch(Character.valueOf('a')){
  case Character.valueOf('a'):
   System.out.println("==");break;
  }

或者是这样的:

switch('a'){
  case Character.valueOf('a'):
   System.out.println("==");break;
  }

这样是错误的,case 后的表达式必须是final的常量类型

转载于:https://my.oschina.net/william1/blog/4728

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值