使用科学计数法将BigDecimal格式化为字符串,反之亦然

时间:2014-01-21 04:17:42

标签: java bigdecimal factorial

我有一个名为factorial的函数,它计算大数的阶乘并返回BidDecimal

BigDecimal temp_val1 = factorial(555);

以上给出66140856092779467090983316712427699021235xxxxxxxxxxxxxxxxxxxxx

现在我必须使用科学记数法将BigDecimal值格式化为字符串

NumberFormat sci_formate = new DecimalFormat("0.#####E0");
String temp_s1 = sci_formate.format(temp_val1);

以上给出了6.61409E1283

现在我需要将字符串temp_s1(6.61409E1283)转换回BigDecimal,它给出了temp_val1的值.... ???怎么做....

1 个答案:

答案 0 :(得分:1)

试试这个

BigDecimal temp_val1 = new BigDecimal("6.61409E1283");

格式化使用

BigDecimal.toEngineeringString()