考察float和long的转换

阅读量: 43 编辑

考察float和long的转换

请问下方代码的运行结果是

long l = 123456;
float f = 3.14F;
l = f;//编译报错,不能向低精度的类型转换

f = (float)l;//强制转换
System.out.println("f = " + f);//123456.0

Java类型自动转换原则

                  char ——》 ↘
                                          int   ——》long  ——》float  ——》double
byte ——》short ——》↗

int 也可以转换为 float
long 也可以转换为 double