使人不理解的一个问题
scott 2010-03-01 02:01:42 从double转换为float,精度丢失问题?
package com.xc.util.datecheck;
public class Test2 {
public static void main(String[] args) {
double s = 22.456789;
System.out.println("##"+Float.parseFloat(String.valueOf(s)));
}
}
这个输出是##22.456789 精度没丢失
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package com.xc.util.datecheck;
public class Test2 {
public static void main(String[] args) {
double s = 22.234567;
System.out.println("##"+Float.parseFloat(String.valueOf(s)));
}
}
这个输出是##22.234568 精度丢失
请问第一个例子精度没丢失,为什么第二个例子精度丢失了?