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

java Double类型精度问题

阅读更多
        double a = 123456789396244.77;
double b = 3691357802469.07;

BigDecimal a1=new BigDecimal(123456789396244.77);
BigDecimal b1=new BigDecimal(3691357802469.07);
BigDecimal c=a1.add(b1);
        System.out.println("BigDecimal:"+c);//BigDecimal:127148147198713.83544921875

        BigDecimal a1=new BigDecimal("123456789396244.77");
BigDecimal b1=new BigDecimal("3691357802469.07");
BigDecimal c=a1.add(b1);

System.out.println("BigDecimal:"+c);//BigDecimal:127148147198713.84


/**
*
*/
public static String SicenToComm(double value) {

String retValue = null;

DecimalFormat df = new DecimalFormat("0.0000");
retValue = df.format(value);

        return retValue ;
}
分享到:
评论

相关推荐

    Java Double 精度问题总结

    本文将详细介绍Java中的 `double` 类型精度问题,并提供几种解决方法。 #### 一、Java Double 精度丢失的原因 1. **二进制表示限制**:`double` 类型基于IEEE 754标准的双精度格式,使用64位来表示一个浮点数。...

    test2_JavaDouble类型比较大小_java编程_

    标题"test2_JavaDouble类型比较大小_java编程_"提示我们关注的是Java中`Double`类型的比较操作。通常,我们可能会像处理整数那样直接使用`>`或`来比较两个`Double`值,例如`double a = 0.1; double b = 0.2; if (a +...

    java_double_精度

    Java 中的双精度浮点数(double)类型在进行运算时经常出现精度丢失的问题,这是由于双精度浮点数在计算机内部的存储方式所致。双精度浮点数使用 64 位二进制数来存储小数,然而这种存储方式会导致某些小数无法精确...

    double类型精度丢失;double转换到64位整数

    `double`是C++、Java等编程语言中的一种数据类型,它用于表示带有小数部分的数值,通常可以精确到15位十进制数。然而,由于浮点数的二进制表示方式,当进行某些计算或转换时,可能会出现精度丢失的问题。标题提到的...

    Java 基本类型double精度计算工具

    该工具用户进行double类型的精度计算,包含加法、减法、乘法、除法、精确点计算、小数点计算,限制小数点后数字

    Java中double类型下出现精度计算错误情况下出力方法

    Java中的简单浮点数类型float和double不能够进行运算,因为大多数情况下是正常的,但是偶尔会出现如上所示的问题。这个问题其实不是JAVA的bug,因为计算机本身是二进制的,而浮点数实际上只是个近似值,所以从二进制...

    java double:双精度浮点型.txt

    java double:双精度浮点型

    解决java数值范围以及float与double精度丢失的问题

    解决java数值范围以及float与double精度丢失的问题 Java中的数值范围和浮点数精度问题是许多开发者经常遇到的问题。下面我们将详细探讨Java中的数值范围、float和double类型的精度问题,并且提供解决方案。 一、...

    java-16位内存数据转化为double型

    从给定的代码片段来看,这实际上是一段C++代码,而非Java代码,旨在将一个十六进制字符串转换为双精度浮点数(double)。在深入解析这段代码之前,我们首先来了解一下Java中如何实现16位内存数据转化为double型。 #...

    Java数据类型和MySql数据类型对应一览

    其中,INTEGER 类型用于存储整数,BIGINT 类型用于存储大整数,FLOAT 类型用于存储浮点数,DOUBLE 类型用于存储双精度浮点数。 日期时间类型 在 Java 中,日期时间类型对应的是 java.sql.Date、java.sql.Time、...

    Java 精确计算-double-float-String

    标题中的"Java 精确计算 - double-float-String"指向的是Java中处理浮点数(double和float)以及字符串表示的数值时可能遇到的精度问题,以及如何通过特定方法实现精确计算。描述中提到的链接指向了一个具体的博客...

    关于java的数值精度

    java程序中数值的精度问题,float、double容易产生精度数值问题,不适合精度计算,而bigdecimal正好解决这一问题

    java\String类型转换成整数double

    标题与描述“java String类型转换成整数double”以及标签“String类型转换成double”均指向了这一核心操作——如何将一个表示数字的字符串转换为Java中的数值类型。 ### 1. 使用`parseXxx`方法进行转换 #### `...

    MySql于Java数据类型对应列表

    **JAVA类型:** `java.lang.Double` **JDBC类型:** 8 **描述:** `DOUBLE` 用于存储高精度的浮点数值。22表示总长度。在Java中,它被映射为 `Double` 类型。 ##### 13. DECIMAL (十进制数) **显示长度:** 11 **...

    double类型转换

    在Java编程语言中,处理数值类型的精度问题是一个常见的需求,特别是在金融、统计或者科学计算等领域。当涉及到`double`类型数据的处理时,保持数值的精确性和格式化输出显得尤为重要。例如,在处理货币金额时,通常...

    Oracle9i数据类型Java数据类型Schema类型对比.doc

    - NUMBER(38,15): 对应 Java 的 BigDecimal 类型,适用于需要高精度浮点数的情况。 - NUMBER(38,15): 也对应 Java 的 Double 类型。 - CHAR 和 VARCHAR2(255): 分别对应 Java 的 String 类型,用于存储固定长度和...

    计算机精度问题(Double)

    解决精度问题的方法有很多,如使用更高精度的数据类型(如Java中的`BigDecimal`),或者使用特定的算法进行浮点数比较。在进行浮点数计算时,可以设定一个容差值(epsilon),只要两个数的差的绝对值小于这个容差,...

    double类型,精确的数据运算

    `double`类型是Java、C++、Python等许多编程语言中的一个浮点数类型,它通常用来表示较大的数值或需要较高精度的计算。然而,`double`类型的精度是有限的,通常约为15到16位有效数字,这可能导致在某些需要高精度...

    Java小数精度、时间格式和类型转换.doc

    Java 小数精度、时间格式和类型转换 Java 中的类型转换是非常重要的,特别是在处理小数和日期时。在 Java 中,存在多种类型的转换,包括基本类型的转换、包装类型的转换、字符串类型的转换等。 首先,让我们来看...

    Java 加减乘除工具类(解决精度损失问题)

    //精度为2,舍入模式为大于0.5进1,否则舍弃 BigDecimal b1 = new BigDecimal(Double.toString(value1.doubleValue())); BigDecimal b2 = new BigDecimal(Double.toString(value2.doubleValue())); return b1....

Global site tag (gtag.js) - Google Analytics