我需要您的帮助来完成以下代码快照。
public class Ex1 {
public static void main(String[] args) {
Number number = new Float(1000000.211);
System.out.println(number);
System.out.println(number.byteValue());
System.out.println(number.shortValue());
System.out.println(number.intValue());
System.out.println(number.longValue());
System.out.println(number.floatValue());
System.out.println(number.doubleValue());
}
}
输出:
1000000.2
64
16960
1000000
1000000
1000000.2
1000000.1875
问题:所以我创建了 Float 实例并将其存储到 Number 类引用变量中,并且还能够调用 Number 类的方法。当我调用doubleValue()方法时,时间输出值在分数之后发生变化。
我还读出了Float 类中doubleValue()方法的实现。
public double doubleValue() {
return (double)value;
}
他们只是将类型转换为双精度值,然后为什么输出值不同。
请提出您的建议和看法。