有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何避免以1Ex格式存储双值?

我有一个双重变量:

private double b=0.0;

我取b中某个字段的值(值在0.0到9.9999999之间)。大多数情况下,用户输入的值介于0.0到1.0之间

当我在“b”中保存来自用户的值时,如果该值为0.000001,则它将被保存为1E-6,下次在屏幕上显示为相同的值(这是因为b是双精度的)

Java中有没有什么方法(只需调用某个方法)可以避免将值转换为1E-6格式?我只想保存用户输入的值(0.000001)


共 (1) 个答案

  1. # 1 楼答案

    实际上,double根本没有“保存”为字符串。这只是一个格式问题,你应该看到^{}。然而,它肯定不会是确切地0.000001,因为这个数字不能准确地表示为双精度。当精确的十进制值很重要时,我强烈建议您使用^{}(就像这里听起来的那样)