switch的long转int-精度损失-枚举类型

博客探讨了在Java中,由于int类型的取值范围限制,将long转换为int会导致精度损失的问题。同时,文章强调了枚举类型作为线程安全的final类,适用于表示有确定值区间的数据集合,具备简洁、安全和方便等优点,并以线程的六种状态为例进行说明。
摘要由CSDN通过智能技术生成

switch支持int和枚举类型,可以用char,byte,short,int类型,jdk1.7中支持string类型,但是不支持long类型

Incompatible types. 

Found: 'boolean', required: 'char, byte, short, int, 

Character, Byte, Short, Integer, String, or an enum

因为byte取值范围-128~127
int的取值范围为(-2147483648~2147483647)
short的取值范围为-32768~32767,占用2个字节
long类型数据范围为-9223372036854774808~9223372036854774807

当long转为int是会造成精度损失





枚举类型本质上就是一个final修饰的类(线程安全)

  • 有确定值区间的数据集合
  • 具有简洁,安全,方便等特点

例如:线程的六种状态

public enum State {
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值