将double添加到字符串末尾时的值不正确

时间:2018-03-15 20:54:04

标签: java string casting double

我在向字符串末尾添加double值时遇到问题。

以下是代码:

String priceString = "The total is £";
double price = 8.64532;

System.out.println(String.format("%.2f", price)); //Correct value

priceString = priceString + price;
System.out.println(priceString); // Incorrect value

我也试过了:

System.out.println(priceString + String.format("%.2f", price)); //Incorrect

第一个print语句的输出是正确的:

8.64

但是第二个print语句的输出始终是:

0.008.64

我不知道发生了什么或为什么。

**编辑**我注意到这个网站对初学者来说是不可思议的。我几个小时都在寻找一个解决方案,在收到我的Uni讲师没有回复之后,需要在某处发布以获得一些帮助。不是每个人都知道一切,有时候初学者需要问你更有经验的开发者问题。搜索网站没有提供有用的结果,因此发布了帖子。

编辑2 代码在其他IDE中运行良好,因此问题似乎与我的IDE有关。我发布在这里是因为我无法在任何地方找到答案,显然,我更倾向于认为这个问题不是IDE。

1 个答案:

答案 0 :(得分:-1)

那是完整的代码吗? 好像你可能会混淆一些变量并打印一个值为0.00的double,然后连接正确的价格值。