java语言中float和double类型的数据在编程时的注意事项
2011-11-08 10:10
465 查看
float和double类型的数据在编程时的需要注意的地方
package execisetest;
public class AccuranceTest {
public static void main(String [] args){
float aa;
aa=0.89968f;
System.out.println(aa);
}
}输出结果是0.89968
package execisetest;
public class AccuranceTest {
public static void main(String [] args){
float aa;
aa=1000.89968f;
System.out.println(aa);
}
}
输出结果是1000.89966,该结果并不等于aa的真实值,原因是你是float类型的数据的取值是一些离散的数值,比如0到1之间就有无数的小数,但是一个float类型的数据只能表示有限的数值不可能把每个取值都能表示出来,小数显示的精度与前面整数的个数有关,整数的位数越多,留给小数的存储空间越小,精度和准确性会越差,因此在编程时需要对小数格外注意。
double也存在同样的问题。
package execisetest;
public class AccuranceTest {
public static void main(String [] args){
float aa;
aa=0.89968f;
System.out.println(aa);
}
}输出结果是0.89968
package execisetest;
public class AccuranceTest {
public static void main(String [] args){
float aa;
aa=1000.89968f;
System.out.println(aa);
}
}
输出结果是1000.89966,该结果并不等于aa的真实值,原因是你是float类型的数据的取值是一些离散的数值,比如0到1之间就有无数的小数,但是一个float类型的数据只能表示有限的数值不可能把每个取值都能表示出来,小数显示的精度与前面整数的个数有关,整数的位数越多,留给小数的存储空间越小,精度和准确性会越差,因此在编程时需要对小数格外注意。
double也存在同样的问题。
相关文章推荐
- java中数据类型转换 Integer String Long Float Double Date Char
- java当中float以及double数据类型的掌握
- JAVA中数据类型划分应该注意的事项
- Java基础-数据类型int,short,char,long,float,double,boolean,byte
- java byte、short、int、long、float、double、char基本数据类型范围
- Java基础2:Java数据类型的划分及其注意事项
- MySQL的float数据类型注意事项
- MySQL 数据类型(float)的注意事项
- MySQL 数据类型(float)的注意事项
- java 中float和double类型数据取值详解
- java中数据类型转换 Integer String Long Float Double Date
- 不同语言基本数据类型(int、char、float、double....)对应字节大小
- java问题总结之3--用非科学计数法输出int、float、double等类型数据
- Java中float和double类型的数据在内存中是怎样存放的
- java Byte和各数据类型(short,int,long,float,double)之间的转换
- java当中float以及double数据类型的掌握
- JAVA基本数据类型转换的主要内容和注意事项
- Java语言中:float数据类型在内存中是怎么存储的?
- java中数据类型转换 Integer String Long Float Double Date
- 不同语言基本数据类型(int、char、float、double....)对应字节大小