Java狂神基础:类型转换

Posted on 2022-04-08 22:36  P-oTaTo  阅读(26)  评论(0编辑  收藏  举报

学习类型转换之前首先要知道数据量类型的大小

 

1.强制类型转换

1.1

在图中分别输出i和b可以发现一个是128,另一个是-128,两个值不相同。这是因为byte的内存小于int,所以byte无法得到128这个值。

所以我们在转换时尽量避免高转低的现象。

1.2

我们在涉及小数转换的时候也要注意精度丢失的问题

例:

可以看到在输出23.7和-45.89时后面的小数丢失了,这就是精度丢失的问题。

注意事项: 

 

还有关于精度的问题

例:

我们设置一个金钱和一个时间,再令它们两个相乘

可以看到结果输出了一个负数,这是因为在输出前这个数就是int类型,而int类型无法输出相乘结果这么大的数。我们将其中一个变量换成double类型的就不出现此类状况了。

可以看到再相乘时我们将时间强制转换为long类型,结果就正常输出我们想要的数字了。