我认为跟随以某种方式与浮点值的精度有关,但我不确定如何以及为什么观察到完全跟随的行为。我在java中有以下代码:
class float_int
{
void float_to_int(float val)
{
int int_val = (int)val;
float remain_val = val - (float)int_val;
System.out.println("val - " + val);
System.out.println("int_val - " + (float)int_val);
System.out.println("remain_val - " + remain_val);
}
public static void main(String args[])
{
float_int obj = new float_int();
obj.float_to_int((float)12.345);
}
}
我得到以下输出:
val - 12.345
int_val - 12.0
remain_val - 0.34500027
现在我不知道为什么我最后会为剩余值获得额外的“27”。