java 中的switch

java 中的switchswitch语句也是面试题出现比较多的一个问题。大部分问题主要是针对switch可用于什么类型上。枚举类大家都没什么疑问。你写一个switch语句编译一下,然后看它的class文件就可以知道,不管是char,short,byte类型都是转化为int之后走的判断。而long,float,double转换为int都会丢失进度,boolean无法转换为int,所以能用在switch…

大家好,又见面了,我是你们的朋友全栈君。

switch语句也是面试题出现比较多的一个问题。

大部分问题主要是针对switch可用于什么类型上。

枚举类大家都没什么疑问。

你写一个switch语句编译一下,然后看它的class文件就可以知道,不管是char,short,byte类型都是转化为int之后走的判断。

而long ,float,double转换为int都会丢失进度,boolean无法转换为int,

所以能用在switch上的类型有,char ,byte,short,int以及相应的包装类型。

 

在jdk1.7,switch提供了对String类型的支持

我们看一下他的前后的对比图:

java 中的switch

java 中的switch

 

可以看到他开始用了String 的hashcode方法获得相应的hashCode int值,然后再做equals判断。

所以,这个问题你加下了吗?

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156888.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • F分布的概率密度函数_F分布的统计量是

    F分布的概率密度函数_F分布的统计量是定义:设X1∼χ2(m),X2∼χ2(n)X_{1}\sim\chi^{2}(m),X_{2}\sim\chi^{2}(n)X1​∼χ2(m),X2​∼χ2(n),X1X_{1}X1​与X2X_{2}X2​相互独立,则称随机变量F=X1/mX2/nF=\frac{X_{1}/m}{X_{2}/n}F=X2​/nX1​/m​服从自由度为mmm及nnn的FFF分布,mmm称为第一自由度,n\boldsymbol{n}n称为第二自由

    2022年10月10日
    3
  • 一文读懂视频编解码原理[通俗易懂]

    一文读懂视频编解码原理[通俗易懂]引子谈到视频的编解码,我们会自然地想到H.264、HEVC/H.265这些权威的视频编解码标准;谈到标准,有人觉得这个是有专门机构去研究的,我们关心应用就好;即使有兴趣读了标准和相关技术,面对更多的是各种数学公式和术语,如协方差、傅立叶变换、高频、滤波等等,需要花更多时间去理解。通常更为实际的做法是,我们只要调研如何应用这些标准,如何做好软硬件编码方案的选型,如何优化技术参数以及如何调用API…

    2022年7月13日
    17
  • 最小生成树的两种方法(Kruskal算法和Prim算法)[通俗易懂]

    关于图的几个概念定义:连通图:在无向图中,若任意两个顶点vivi与vjvj都有路径相通,则称该无向图为连通图。 强连通图:在有向图中,若任意两个顶点vivi与vjvj都有路径相通,则称该有向图为强连通图。 连通网:在连通图中,若图的边具有一定的意义,每一条边都对应着一个数,称为权;权代表着连接连个顶点的代价,称这种连通图叫做连通网。 生成树:一个连通图的生成树是指一个连通子图,它含有图中…

    2022年4月6日
    47
  • MySQL 游标

    MySQL 游标我们之前写的 sql 语句 虽然可以通过筛选条件来限定返回的记录 但是我们却没有办法在结果集里面 像指针一样 定位每一条记录 向前定位 向后定位 或随意定位到某一条记录 为了解决这个问题 我们可以使用游标 游标可以让我们可以对结果集中的每一条记录进行定位 并对指向的记录中的数据进行操作接下来就让我们来看看具体怎么使用 这里的 select 语句用来返回一个创建游标的结果集 cursor 英文意思是游标 光标简单记忆就是说用一个查询语句来描述游标举例 2 2 打开游标定义好游标后 如果想要使用它 就得

    2025年10月17日
    4
  • Win8 app判断网络连接状态

    Win8app判断网络连接状态推荐:http://www.cnblogs.com/roucheng/p/3535198.html

    2021年12月25日
    47
  • SpringBoot集成redis「建议收藏」

    SpringBoot集成redis「建议收藏」今天,日月在这里教大家如何使用springBoot集成redis,说实话比较简单,网上也有大把的教程。先套用一下网上的简介。定义REmoteDIctionaryServer(Redis)是一个由SalvatoreSanfilippo写的key-value存储系统。Redis是一个开源的使用ANSIC语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value…

    2022年6月16日
    25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号