类型的转换和数据溢出

自动类型转换。

好比生活中有两个水杯,一个大的一个小的,如果将装满水的小杯中水倒入空的大杯,是可以的,类似于这样的场景在java中称之为自动类型转换

①在整个表达式中,如果有double数据类型的话,则整个表达式的结果会自动的提升为double类型

②在自动类型转换的表达式中数据类型需要兼容

​ 如:都是数值型

③目标类型要大于原类型

强制类型转换

好比生活中有两个水杯,一个大的一个小的,如果将装满水的大杯中水倒入空的小杯,是可以的但是会溢出,类似于这样的场景在java中称之为自强制类型转换

数据类型 变量名=(数据类型)(表达式);————是先运算表达式,然后将结果转换

如:int second=(int) (first+duo);

​ int second=(int) (first)+(int)(duo);————先将first转换为int类型在计算,最后将结果转换为int类型

缺点:丢失精度,慎用(double转int 丢失的是小数点后面的所有值不是四舍五入

数据溢出

 

两处代码对比我们可以看出区别在哪。

在字节比较上 int>byte,所以 int 能存放的数据不一定能全部存放于 byte 中。

数据所占的存储空间远超预期的存储界限,如果不做判断就会导致数据溢出。 

在编写程序时一定要注意!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值