程序如下:
结果是:0.899999999
分析原因是double类型表述1.1的问题,应该是表述不好。
目前的解决办法是:
就是格式化一下呀,也不知道是不是好办法,网上这家伙说用BigDecimal,也不知道行不行。
输出结果是:0.9
这么写输出也是0.9
public static void main(String[] args) {
System.out.println(2.0-1.1);
}
结果是:0.899999999
分析原因是double类型表述1.1的问题,应该是表述不好。
目前的解决办法是:
System.out.printf("%.1f",2.0-1.1);
就是格式化一下呀,也不知道是不是好办法,网上这家伙说用BigDecimal,也不知道行不行。
输出结果是:0.9
这么写输出也是0.9
BigDecimal a = new BigDecimal("2.0").subtract(new BigDecimal("1.1"));
System.out.println(a);