校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > java语言 > switch、default
题目

下面的switch语句中,x可以是哪些类型的数据:()

switch(x)
{
default:
System.out.println("Hello");
}


A.long

B.char

C.float

D.byte

解答

正确答案是 B、D

以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类型  

C 0条回复 评论

帖子还没人回复快来抢沙发