困惑!求教关于一个double型乘法计算输出的问题! public static void main(String[] args){ double d; d=1.10*1.10; System.out.println(d);}为什么输出的结果为1.2100000000000002而C++中是1.21 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 因为JAVA中不是所有的小数都可以用二进制浮点数精确表示所以你想进行精确运算就要用到BigDecimal 注意使用的是 BigDecimal(String)构造器 而不是BigDecimal(double)BigDecimal j =new BigDecimal(Double.toString(1.1));BigDecimal k = new BigDecimal(Double.toString(1.1));System.out.println(j.multiply(k));这样就可以打印出1.21 关于线程的实现方式,为什么不用import java.lang.Runnable也能运行? 小问题 根据参数返回类的属性值 怎么把线程搞的久一点,比LONG值还要大?? JMS可以在一般的应用程序使用吗? 请问for循环里的值能赋到循环外吗? 谁知道JACOB中Dispatch类的Invoke如何用? 第2个问题 画图问题,求救啊 热心的朋友请进-----------100 关于java正则表达式的疑惑,忘前辈们赐教 请问怎么统计一段字符串内的某个字符串的个数啊? 谁有或知道下面这书的电子版的下载地址-JAVA核心编程第1卷:基础篇
BigDecimal k = new BigDecimal(Double.toString(1.1));System.out.println(j.multiply(k));
这样就可以打印出1.21