【发布时间】:2014-08-13 18:08:07
【问题描述】:
我正在尝试在 Java 中计算一个大对数,但无法弄清楚如何解决溢出问题。研究表明我需要使用 BigDecimal 类,但我不能对此进行双重转换。 任何人都可以帮忙吗?
干杯,这是我正在尝试计算的示例: Math.log10(13168375/4224127912)
【问题讨论】:
-
我不确定这里有什么问题。为什么你不能只做
log10(13168375) - log10(4224127912)?溢出在哪里? -
为什么不能直接从
double创建一个新的BigDecimal而不是强制转换?BigDecimal someNumber = new BigDecimal(doublVal); -
如果要计算 BigDecimal 的
log,请参阅 this answer。