在java中,怎样把一个double数转换为字符串时,不用科学计数法表示。

简介: 在java中,怎样把一个double数转换为字符串时,不用科学计数法表示。

对Double类型的数字进行 格式化输出 ,相对来说不是很精确

import java.text.DecimalFormat;
public class TestDouble_String {
  public static void main(String[] args) {
    Double double1 = 123456789.123456789;
    DecimalFormat decimalFormat = new DecimalFormat("#,##0.00");//格式化设置
    System.out.println(decimalFormat.format(double1));
    System.out.println(double1);
  }
}
  • 解决方法2:

数字用BigDecimal表示,然后在输出string ,相对来说更精确

import java.math.BigDecimal;
public class TestBigDecimal_String {
  public static void main(String[] args) {
        BigDecimal bigDecimal = new BigDecimal(Long.MAX_VALUE);
    String result = bigDecimal.toString();
    System.out.println(result);
  }
}

所以在要求显示的值更精确时采用第二种方式,当要求值显示的更直观时采用第一种方法

目录
相关文章
Java项目中高精度数值计算:为何BigDecimal优于Double
在Java项目开发中,涉及金额计算、面积计算等高精度数值操作时,应选择 `BigDecimal` 而非 `Double`。`BigDecimal` 提供任意精度的小数运算、多种舍入模式和良好的可读性,确保计算结果的准确性和可靠性。例如,在金额计算中,`BigDecimal` 可以精确到小数点后两位,而 `Double` 可能因精度问题导致结果不准确。
556 1
【Java基础面试十】、何对Integer和Double类型判断相等?
这篇文章讨论了如何在Java中正确比较`Integer`和`Double`类型的值,指出不能直接使用`==`操作符比较不同类型,而应该将它们转换为相同的基本数据类型(如`double`)后进行比较。
【Java基础面试十】、何对Integer和Double类型判断相等?
|
Java 数据库连接 API
Java中的异常处理:一种艺术与科学
【8月更文挑战第11天】在Java的编程世界中,异常处理是一种既需要技术精湛又需具备艺术感的实践。它不仅仅是捕捉和处理错误,更是一种确保程序健壮性和用户体验的策略。本文将探讨Java中异常处理的重要性,以及如何优雅地实现异常管理,提升代码的可读性和维护性,同时确保程序的稳定性和可靠性。
|
Java
Java中将保留四位小数的Double转换为String的方法详解
选择合适的方法,可以使代码更加简洁、高效,同时也能满足不同场景下的需求。
822 5
|
Java
Java的double值保留2位小数
【6月更文挑战第16天】Java的double值保留2位小数
851 0
|
C#
C# 字节数组与INT16,float,double之间相互转换,字符数组与字符串相互转换,
C# 字节数组与INT16,float,double之间相互转换,字符数组与字符串相互转换,
1288 2
|
小程序 Java
java猜数字游戏并计数
java猜数字游戏并计数
172 4
|
存储 Java
百度搜索:蓝易云【Java语言之float、double内存存储方式】
由于使用IEEE 754标准进行存储,float和double类型可以表示非常大或非常小的浮点数,并且具有一定的精度。然而,由于浮点数的特性,它们在进行精确计算时可能会存在舍入误差。在编写Java程序时,需要注意使
341 0
Java对double值进行四舍五入,保留两位小数的几种方法
Java对double值进行四舍五入,保留两位小数的几种方法
446 1
|
Java Spring 容器
解决java.lang.StackOverflowError at java.base/java.lang.Double.doubleToRawLongBits(Native Method)问题~
解决java.lang.StackOverflowError at java.base/java.lang.Double.doubleToRawLongBits(Native Method)问题~
168 0