JAVA数学计算中一个疑问

[复制链接]
查看11 | 回复4 | 2009-8-28 16:19:10 | 显示全部楼层 |阅读模式
mark等结果个人感觉一样 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~回答者: pujia12345 - 副总裁 十级你说的向前兼容我理解,但是BigDecimal支持Double参数直接使用我不理解为什么转出去,再转回来又没有什么精度差异 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~现在感觉 回答者:knightzhuwei - 魔导师 十一级 和我说的基本上一样继续等答案
回复

使用道具 举报

千问 | 2009-8-28 16:19:10 | 显示全部楼层
这个叫向前兼容:jdk4以前没有类型自动强转 -------------------------------我 在回来说下;回答者:liushebiao - 大魔法师 八级 2009-8-28 16:19 说的是对的,是精度问题,只有String才能获得高精度
回复

使用道具 举报

千问 | 2009-8-28 16:19:10 | 显示全部楼层
Double.toString(value1) 把value1转为String形式直接写BigDecimal b1=new BigDecimal(value1)也行 好像没什么区别
回复

使用道具 举报

千问 | 2009-8-28 16:19:10 | 显示全部楼层
Double.toString(value1);是把value1转换为字符串形式,但是直接传个value1进去,就是个double型的数.这取决于你的BigDecimal的构造方法.
回复

使用道具 举报

千问 | 2009-8-28 16:19:10 | 显示全部楼层
这是调用的Double对象的toString方法,把value1的传转换成字符串。你那种直接的写法可能是不对的。现在不了解BigDecimal的参数是什么数据类型的。看程序中的写法,它的参数应该是String类型的吧。前面那句传给BigDecimal的构造方法是个String的后面你说写那个传过去是个double的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行