一个简单的java 程序,你认为运行结果会是多少呢???
public class TestDouble{
public static void main(String... args){
//分别定义3个double型数据,对它们进行相加操作
double num1 = 0.02;
double num2 = 0.05;
double num3 = 0.01;
//在定义两个double型数据,存储结果
double result1 = num1 + num2;
double result2 = num2 + num3;
//输出结果
System.out.println("num1+num2-->"+result1);
System.out.println("num2+num3-->"+result2);
}
} 1 楼 greemranqq 2012-03-03
这应该是 计算机,不能对所有的小数都用二进制正确表示,造成的!
一般doluble 类型不用于商业开发,精度上会出现问题。
一般的处理方法是 用BigDecimal,但是是会有问题,它是转换为String 类型,比较繁琐,可以自己写方法,按自己要求处理。具体看API 或者源码!