1 概述:
2 int 类型向float转化 由于进度的不同int(28位)而float(23位)int 向float转化时会发生丢失精度的危险
代码实现如下:
package Lei;
public class Test02 {
public static void main(String[] args){
int i=0x1000001;//16进制
float f=i;
System.out.println(Integer.toBinaryString(i)+":"+i);
System.out.println(Integer.toBinaryString((int)f)+":"+f);
}
}
结果:1000000000000000000000001:16777217
1000000000000000000000000:1.6777216E7 (将float类型转化为int类型 结果少1 是由于精度的关系)
(小类型向大类型转化时)
3 Long 类型转化为double 类型的精度丢失案例:(小类型精度值高于大类型精度值时要注意精度丢失的问题)