类型转换
- 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qBfxEwCg-1616632699706)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325075008154.png)]
(小数的优先级一定大于整数)
- 运算中,不同类型的数据先转化为同一类型,然后再进行运算
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6sFJCZ0t-1616632699708)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325075239969.png)]
-
强制类型转换((类型)变量名) 高------低的转换
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Whakm92U-1616632699709)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325075524776.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kGBuOj8B-1616632699710)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325075535723.png)]
用鼠标中间点Byte进去看可以发现[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Syj2JXld-1616632699711)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325075655903.png)]
最大只有127,你给128,出现了内存溢出
- 自动类型转换 低到高的自动转换
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fzFy3BSv-1616632699711)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325080015009.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-POdTLD19-1616632699713)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325080019577.png)]
注意点
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度的问题!
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1ZJLzV7z-1616632699713)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325080303724.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fDg2bOpg-1616632699714)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325080321511.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IyxBiav2-1616632699714)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325080520469.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nl7BgPlW-1616632699714)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325080526466.png)]
操作比较大的数的时候,注意溢出问题
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6SYIqten-1616632699714)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325083014523.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5f1iUFzu-1616632699715)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325083024028.png)]
溢出:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LRsAcwWf-1616632699716)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325083257508.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZqOyBqRK-1616632699716)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325083304622.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4c9vKpXn-1616632699716)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325083442515.png)]
两个都是int类型,虽然你最后要计算出long类型,但是他默认是int类型,在转换之前已经出现了问题
所以要先转换再去运用
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AY0Q8Xn1-1616632699716)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325083610348.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZIFIe6u4-1616632699718)(C:\Users\huaao\AppData\Roaming\Typora\typora-user-images\image-20210325083619807.png)]
这样就解决了这个问题