可以由a表示的值的范围
float或
double比可以由a表示的范围大得多
long。虽然从转换时,人们可能会失去显著数字
long的
float,它仍然是一个“拉”操作,因为范围更广。
根据Java语言规范§5.1.2:
将int或long值转换为float或将long值转换为double的加宽转换可能会导致精度降低-
也就是说,结果可能会丢失该值的某些最低有效位。在这种情况下,使用IEEE 754舍入到最近模式(第4.2.4节),所得的浮点值将是整数值的正确舍入版本。
请注意,a
double可以准确代表每个可能的
int值。



