witch语句中,x可以是哪些类型的数据

简介: witch语句中,x可以是哪些类型的数据

27cd4f6ef3a44d40aad739d4bc203349.png

jdk1.7之前byte,short ,int ,char

jdk1.7之后加入String

java8,switch支持10种类型

基本类型:byte char short int

包装类 :Byte,Short,Character,Integer String enum

实际只支持int类型 Java实际只能支持int类型的switch语句,那其他的类型时如何支持的

a、基本类型byte char short 原因:这些基本数字类型可自动向上转为int, 实际还是用的int。

b、基本类型包装类Byte,Short,Character,Integer 原因:java的自动拆箱机制 可看这些对象自动转为基本类型

c、String 类型 原因:实际switch比较的string.hashCode值,它是一个int类型

d、enum类型 原因 :实际比较的是enum的ordinal值(表示枚举值的顺序),它也是一个int类型 所以也可以说 switch语句只支持int类型


注:该解释来自于牛客题目回答。这里记录下,感谢分享。

相关文章
|
7月前
|
C++
在C++语言中的简单语句类型
在C++语言中的简单语句类型
49 0
|
2月前
|
SQL 存储 关系型数据库
SQL判断CHAR类型字段不为空的方法与技巧
在SQL查询中,判断一个CHAR类型字段是否不为空是一个常见的需求
|
7月前
|
C++
【C++】istream类型对象转换为逻辑条件判断值
【C++】istream类型对象转换为逻辑条件判断值
【C++】istream类型对象转换为逻辑条件判断值
|
7月前
|
程序员 Python
if语句的一般形式
if语句的一般形式
74 0
|
7月前
|
SQL 存储 定位技术
数据库基础(七):用户自定义数据类型与标量值、内嵌表值、多语句表值函数等用户定义函数的创建、使用、删除
数据库基础(七):用户自定义数据类型与标量值、内嵌表值、多语句表值函数等用户定义函数的创建、使用、删除
139 1
|
7月前
|
SQL Oracle 关系型数据库
sql语句两个字段合并或者两个字段拼接显示
sql语句两个字段合并或者两个字段拼接显示
|
SQL Oracle 关系型数据库
Sql 语句空字符串和NUll值的区别及使用技巧
Sql 语句空字符串和NUll值的区别及使用技巧
816 0
Sql 语句空字符串和NUll值的区别及使用技巧
|
关系型数据库 MySQL
DDL-数据定义语句
DDL-数据定义语句
|
SQL Oracle 关系型数据库
Oracle数据库sql语句空字段筛选方法,sql语句值为空判断方法
Oracle数据库sql语句空字段筛选方法,sql语句值为空判断方法
659 0
Oracle数据库sql语句空字段筛选方法,sql语句值为空判断方法