`
zx_code
  • 浏览: 96893 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

java浮点数精确计算

    博客分类:
  • Java
阅读更多
java浮点数精确计算,使用java.math.BigDecimal,测试代码如下:
package test;

import java.math.BigDecimal;

public class Test {
	public static void main(String[] args) {
		Double d1=0.0333D;
		Double d2=0.0333D;
		Double d3=0.0333D;
		System.out.println(String.valueOf(d1+d2+d3));
		
		BigDecimal b1 = new BigDecimal("0.0333");
		BigDecimal b2 = new BigDecimal("0.0333");
		BigDecimal b3 = new BigDecimal("0.0333");
		System.out.println(b1.add(b2).add(b3).doubleValue());
		System.out.println(b1.doubleValue());
		
		BigDecimal bd = new BigDecimal(0);
		String[] str = {"0.0333","0.0333","0.0333"};
		for(String s : str)
		{
			bd = bd.add(new BigDecimal(s));
		}
		
		System.out.println(bd.doubleValue());
	}
}
1
0
分享到:
评论

相关推荐

    java精确计算浮点数工具类

    Java对浮点数的计算是不精确的,比如0.05+0.01结果不是0.06,而是0.060000000000000005,更有甚者,一个数除以0.0,Java是...该类提供了加减乘除四则运算的精确计算方式.在你处理数据的工程中,该类可以给你意想不到的惊喜

    Java中实现浮点数的精确计算

    Java中的简单浮点数类型float和double不能够进行运算。不光是Java,在其它很多编程语言中也有这样的问题。在大多数情况下,计算的结果是准确的,但是多试几次(可以做一个循环)就可以试出类似上面的错误。

    Java实现的浮点类的精确计算

    这个类可以当做一个工具类来用,有了这个工具类,以后的浮点数的计算误差就不再是问题了。

    [Java]精确表达浮点数

    如果你希望得到精确计算结果,最好是用分数形式来表示小数。有限小数或者无限循环小数都可以转化为分数。比如: 0.9=9/10 0.33(3)=1/3=3/9 给定一个有限小数或者无限循环小数,你能否以分母最小的分数形式返回这个...

    java保留两位小数问题

    四舍五入 ,浮点数精确计算,浮点数输出(科学记数法)等等

    运算工具类实现精确计算

    java运算工具类,可以处理浮点数的精度丢失问题,可以实现精确计算,常用公共方法抽取,常用工具类11111111111111111111111111111111111111111111111111111111111111111111111111

    浮点数计算为什么会出错

    计算机之所以叫"计算"机就是因为发明它主要是用来计算的,"计算"当然是它的特长,在大家的印象中,计算一定是非常准确的。但实际上,即使在一些非常基本的小数运算中,计算的结果也是不精确的。

    Java-关于基本数据类型中浮点数计算产生的精度问题

    BigDecimal类是一个大小数操作类,可以用来对超过16位有效位的数据进行精确的运算,在这里我们使用BigDecimal类来解决浮点数计算产生的精度丢失问题。 精度问题 在这里我们讨论一个问题:3 – 2.7 == 0.3 的值是什么...

    精确计算工具类

    Android 精确计算工具类。 /** * @Title: Arith.java * @Package com.uxun.pay.util * @Description: TODO(用一句话描述该文件做什么) * @author daiw * @date 2016-1-5 上午9:05:34 * @version V1.0 */ ...

    java大数乘法的简单实现 浮点数乘法运算

    大数乘法可以进行任意大小和精度的整数和浮点数的乘法运算, 精确度很高, 可以用作经融等领域的计算,这个是我看了一些资料, 然后自己整理实现的,简单测试了一下

    java 实现加减乘除

    可以实现数据的加减乘除,简单方便对于学习不太好的最合适

    Java中使用的常用数学类

    由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供 精确的浮点数运算,包括加减乘除和四舍五入,以及百分数转换。

    Java理论与实践:您的小数点到哪里去了?

    浮点数和小数不象整数一样“循规蹈矩”,不能假定浮点计算一定产生整型或精确的结果,虽然它们的确“应该”那样做。最好将浮点运算保留用作计算本来就不精确的数值。如果需要表示定点数,则使用 BigDecimal。

    Java与MySQL中小数保存问题解析.pptx.pptx

    在Java和MySQL中,小数的精度可能会受到限制,如float类型的小数只能精确到6-7位,double类型也只能精确到15-16位。 浮点数运算问题 在进行浮点数运算时,可能会出现精度丢失的问题,例如0.1+0.2的结果并不等于0.3...

    浮点计算误差分析——我自己写的

    自己写的计算机浮点数计算的误差分析,用java描述,详细地讲述了误差来源和精确地计算方法。

    Java POI读取excel中数值精度损失问题解决

    主要介绍了Java POI读取excel中数值精度损失问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    java_double_serialization:Java double值与字符串,longs,int之间的转换

    通常需要存储以非二进制格式计算得出的浮点数而又不丢失信息,例如存储在(JSON)文本文件中。 Java 提供了一种使用获取double 值的精确表示的。 Java还可以使用将生成的十六进制字符串反序列化为double 值。 基本包...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例025 更精确地使用浮点数 35 实例026 不用乘法运算符实现2×16 37 实例027 实现两个变量的互换(不借助 第3个变量) 37 2.3 条件语句 38 实例028 判断某一年是否为闰年 38 实例029 验证登录信息的合法性 39 实例...

    单位转换工具(手机软件)

    使用64位浮点数计算,结果更准确,精确度更高。 包括:角加速度;线加速度;角度;面积;电容;衣服;计算机;摩尔浓度;烹饪;烹饪-烤箱;密度;能量&功;流量;力;单位力;耗油率;照明度;感应系数;长度;转动...

Global site tag (gtag.js) - Google Analytics