本文转自显魄-Simple

在JDK1.5之前,switch循环只支持byte short char int四种数据类型.

JDK1.5 在switch循环中增加了枚举类与byte short char int的包装类,对四个包装类的支持是因为java编译器在底层手动进行拆箱,而对枚举类的支持是因为枚举类有一个ordinal方法,该方法实际上是一个int类型的数值.

jdk1.7开始支持String类型,但实际上String类型有一个hashCode算法,结果也是int类型.而byte short char类型可以在不损失精度的情况下向上转型成int类型.所以总的来说,可以认为switch中只支持int。

为什么不支持long类型呢?
StackOverflow : Why can’t your switch statement data type be long, Java?

switch支持的类型相关推荐

  1. java的switch支持包装类型吗?

    java的switch支持包装类型吗? 包装类型能放在switch后面吗? 包装类型能放在case后面吗? JVM在处理基本类型和包装类型的区别 结论 参考 我们都知道java的switch支持6种数 ...

  2. Switch支持的几种类型

    Switch支持类型: JDK1.7以上:int,Integer,short,byte,char,enum,String等7种类型 (平时倒不是怎么注意,面试才发现) example: public ...

  3. switch参数支持的类型

    switch(expr)中,expr只能是一个枚举常量(内部也是由整型或字符类型实现)或一个整数表达式.其中整数表达式可以是基本类型int或其对应的包装类型Integer,当然也包括不同长度的整型,例 ...

  4. Java7中的switch支持String的实现细节

    http://blog.iamzsx.me/show.html?id=161001 ---------------------------------------------- 在Java7之前,sw ...

  5. Java中switch的参数类型

    概述 在jdk1.7以下版本,switch的参数类型只能是:int 或者 enum,在jdk1.7及以上版本,参数可以为String类型!!! 当因为版本低,switch功能不支持字符串作为条件.这时 ...

  6. Switch参数的类型及Switch--case的穿透性

    Switch参数的类型及Switch–case的穿透性 Switch参数的类型 switch目前支持的参数类型是 byte short char int enum String 其中 enum是jav ...

  7. 不能做switch()的参数类型

    switch后面只能带可以自动转换为整形(包括整形)的类型,不能为实型. 具体如下: C/C++中: 支持类型:byte,char,short,int,long,bool,枚举类型. 不支持的类型:f ...

  8. 关于Java中Switch支持的数据类型

    Java中Switch支持byte.short.char.int四种基本类型,在JDK1.5中支持了枚举类型以及byte.short.char.int四种基本数据类型的包装类,在JDK1.7中支持了S ...

  9. switch支持的10种数据类型和注意事项

    文章目录 switch支持的数据类型[切记不支持long.double.float及其包装类型] switch注意事项 switch支持的数据类型[切记不支持long.double.float及其包装 ...

  10. mac邮件过滤器SpamSieve,支持任意类型的任意数量的电子邮件帐户

    SpamSieve for mac是适用于Mac系统的一款邮件过滤器.spamsieve mac支持任意类型的任意数量的电子邮件帐户,可以通过各种标准可靠地识别哪些消息不是垃圾邮件,了解您的合法邮件是 ...

最新文章

  1. 2022就业新风向:上海新发职位居首,北京招聘薪资最高
  2. JAVA中this用法小结
  3. vncview 多屏_OpenStack中VNC协议实现多屏共享(多屏不踢访问)
  4. C#基础--类/接口/成员修饰符,多态、重载、重写,静态和非静态
  5. 1、取得/etiantian文件的权限对应的数字(考试题答案系列)
  6. IDEA 创建 SpringCloud项目-多项目方式
  7. qt4.7 mysql_详解Qt 4.7编译和访问Mysql驱动
  8. Axis2 WebService(配置、发布、调用)
  9. OpenCV函数cvFindContours
  10. python求解最大子序列问题,子序列可连续或不连续
  11. 大前端:数据可视化 大屏设计工具整理
  12. 用别人的血汗去染自己的红顶子,谁愿意去干谁干,我是不干
  13. NQueen问题(N皇后问题Java)
  14. 笔杆网试用---功能篇(一)
  15. 各纬度气候分布图_气候气压带图_世界气候气压带风带分布图要图(需要表识纬度)-4d影院专题信息栏目...
  16. ubuntu设置文件夹共享
  17. 利用单片机控制74HC595显示图案
  18. 南昌大学计算机类学费软件,南昌大学2017年各专业学费一览表
  19. 一个画质很好的俄罗斯方块代码(c++)
  20. 单片机输出脉冲的C语言简易程序,AVR单片机驱动二相步进电机(单极驱动)简易程序,带串口控制...

热门文章

  1. java架构实践_Java架构实践-关于IO流
  2. java timer.schedule如何控制执行次数_Java 面试——JIT详解
  3. 用tensorflow实现线性回归算法
  4. python操作数据库的两种方式
  5. mysql数据库MyISAM存储引擎_MySQL数据库MyISAM存储引擎
  6. python二维数组切片_python语言多维数组切片方法
  7. 刚才读《基于Lucene的中文自然语言搜索引擎》后感
  8. 计算机网络超详细笔记(六):传输层
  9. Support Vector Machine's Large Margin
  10. Frobenius companion matrix