<一>默认转换(从小到大的转换)
经常需要将一种·数值类型转换为另一种数值类型
一般来说,我们在运算的时候要求参与运算的数据类型必须一致
注意:
布尔类型(boolean)不能转换为其他的数据类型
默认转换(从小到大的转换):
A:byte short char->int- >long-> float->long
B:byte short char相互之间不转换,他们参与运算首先转换为int类型
<二>强制转换
强制转换:从大的数据类型转换为小的数据类型
格式:
目标数据类型 变量名=(目标数据类型)(被转换的数据)
注意:
不要随意的去使用强制转换因为它隐含了损失精度的问题
被转换的数据如果是一个数值或一个变量不用加括号
<思考题1>
请问下面这个有没有问题
double d=12.245;
float f=d;
答:有问题把double赋值给float为了强制转换
double d=12.345;
float f=(float)d;
<思考题二>
看看下面两个定义有无区别?
float f1=12.345;
float f2=12.345F;
/*
答:f1其实是通过double类型转换过来的
f2本身就是一个float类型
*/