【Java面试题】switch 是否能作用在byte上,是否能作用在long上,是否能作用在String上?

Java面试题:switch 是否能作用在byte上,是否能作用在long上,是否能作用在String上?

  • switch 可作用于char byte short int
  • switch 可作用于 char byte short int 对应的包装类
  • switch 不可作用于 long double float boolean 包括他们的包装类
  • switch 可作用于 String (jdk1.7 后才可以作用于String上)
  • switch 可以是枚举类型(JDK1.5之后)

switch 只能是int 或 能转成int的 byte ,short ,char 。jdk 1.7 之后,string也可以。

在 switch (ecpr1)中,expr1 只能是一个整数表达式或者枚举常量,整数表达式可以是int 或 Integer 包装类型,由于 ,byte,short,char 都可以隐含转成 int ,所以这些类型以及它们的包装都可以作用在switch上。
显然,long 和 string 类型都不符合switch 的语法规定,并且不能被隐式转成int类型,所以它们不能作用于switch上。
另外 JDK1.7 中引入新特性,switch可以接收string类型的值,所以string自然也就可以作用在switch上。


原文链接:

https://blog.csdn.net/qq_38225558/article/details/87102012

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值