类型转换

1.类型转换

类型转换分为两种,一种是隐式转换,一种是强制转换。

2.隐式转换

取值范围小的数或者变量可以直接赋值给取值范围大的数

就像4L的油可以直接倒入8L的油桶里

注意!赋值是从右往左

3.强制转换

取值范围大的数或者变量不可以直接赋值给取值范围小的数

就像8L的油倒入4L的桶会溢出

java报错

但是我们可以强制转换,转换的方法就是:

4.注意事项

1.在java中,如果两个数据的数据类型不一致就不会进行运算

2.取值范围大的数和取值范围小的数做运算时,小的会变成大的,然后再进行运算

3.byte、short、char这三个类型在做运算时都会提升为int,再进行运算

面试题:请问该代码是否正确?

答:不正确,因为byte在运算时会提升为int,所以a与b的类型都是int 那么c的类型就不能用byte而要用int

5.转换问题

1.内存溢出:在大容量转换为小容量时,如果容量过大而超过了小容量的类所能承受的范围,则会出错。

如:

2.精度损失:在强制转换时,小数转整数,会出现精度损失的情况

如:

3.相乘问题:未转换,已相乘。

如:

解决方法:

posted @ 2024-08-03 11:29  直実  阅读(14)  评论(0编辑  收藏  举报