当前位置: 首页 > 知识库问答 >
问题:

如何转换BigDecimal双Java?

俞子实
2023-03-14

在java中如何将BigDecimal转换为Double?我有一个要求,我们必须使用Double作为参数,但我们得到的是BigDecimal,所以我必须将BigDecimal转换为Double。

共有3个答案

松桐
2023-03-14

使用BigDecimal类中存在的双值方法:

double doubleValue()

将此BigDecimal转换为double。

阮健
2023-03-14

您可以使用将bigdecimic转换为double。doubleValue()。但相信我,如果你有汇率操纵,就不要使用它。它应该始终直接在BigDecimal对象上执行。这些计算中的精度损失是货币相关计算中的一个大问题。

谢同化
2023-03-14

您需要使用doubleValue()方法从BigDecimal对象获取双精度值。

BigDecimal bd; // the value you get
double d = bd.doubleValue(); // The double you want
 类似资料:
  • 问题内容: 我怎样才能投来? 问题答案: 您必须创建一个新的。

  • 问题内容: 我们如何在Java中转换成?我有一个要求,我们必须使用Double作为参数,但是我们越来越明白了,所以我必须转换成。 问题答案: 您需要使用该方法从BigDecimal对象获取double值。

  • 问题内容: 我想创建一种计算整数和大十进制乘法的方法。我在Google和论坛上搜索没有找到任何内容。 有人能帮我吗? 问题答案: 要将整数(或字节/短/浮点数/双精度数)与BigInteger(或BigDecimal)相乘,必须先将本机数字转换为BigInteger / BigDecimal。 注意:是不一样的,而且在不同的原因的BigDecimal和BigInteger的。在这两种情况下,我建议

  • 类有一些有用的方法来保证无损转换: <代码>字节值精确() 但是,方法floatValueExact()和doubleValueExact()不存在。 我阅读了方法和的OpenJDK源代码。两者似乎都分别回退到和,它们可能返回正无穷大或负无穷大。例如,解析10,000个9s的字符串将返回正无穷大。据我所知,没有无穷大的内部概念。此外,将100个9s的字符串解析为给出了,这不是无穷大,而是失去了精度

  • 问题内容: 我有Hibernate方法,它返回给我一个BigDecimal。我有另一个API方法,我需要将该数字传递给它,但是它接受Integer作为参数。我不能更改两种方法的返回类型或变量类型。 现在如何将BigDecimal转换为Integer并将其传递给第二种方法? 有没有解决的办法? 问题答案: 您将致电(或仅致电),如果您丢失了信息,它甚至会引发异常。返回一个int,但是自动装箱可以解决

  • 问题内容: 我有一个BigDecimal对象,我想将其转换为字符串。问题是我的值得到了分数,我得到了一个很大的数字(长度),例如,我只需要字符串中的原始数字即可: 输出为: 我需要把输出准确地放在字符串中 问题答案: 要获得准确的结果,您需要使用String构造函数或(它基于double的规范表示构造一个BigDecimal): 问题在于参数是a ,并且恰巧双精度不能正确表示。因此,“转换”为最接