Java编译时常量类型、赋值类型

long len = 9849435934523;
这个时候就会出错,编译器在读取的时候,将其认为是Int型。
所以正确的为:
long len = 9849435934523L;
//
long len = 1L;
int age = len;
出错:编译器在会认为len的类型无法放进int型中的。
注:final leng len = 1L; 也是long型的

//总结
常量在编译时:
小数 认为是 double型
整数 认为是int型的

所以
对long型赋值:加L,就将其读取出Long型
对float型赋值:加F,就将其读取float型

此外,对于
final long len = 1L;
int age = len;
编译器只判断类型是否兼容。这里就会出错。

在进行赋值的时候,才会去判断目标类型能否"容得"下该值,如果行则好,不行就会报编译错误。
//final
只允许赋一次值,可以在编译时,也可以在运行时。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值