我怎样才能Long
投到BigDecimal
?
问问题
96708 次
6 回答
61
您必须创建一个新的BigDecimal
.
BigDecimal d = new BigDecimal(long);
于 2009-05-28T15:51:21.397 回答
23
为了完整起见,您可以使用:
// valueOf will return cached instances for values zero through to ten
BigDecimal d = BigDecimal.valueOf(yourLong);
0 - 10 是 java 6 的实现,不确定以前的 JDK
于 2009-05-28T16:07:06.170 回答
17
你不应该使用 BigDecimal d = new BigDecimal(long); !!
BigDecimal 中 long 的实现并不精确。对于金融应用来说,这是至关重要的!
但是 String 参数的实现更好!所以使用类似的东西:
new BigDecimal(yourLong.toString());
在http://www.parleys.com/上有一个关于这个的讨论。
于 2011-08-16T09:02:20.207 回答
4
你不能投。你可以创建一个新的BigDecimal
。如果你有非原始的 Long,你可以long
从Long
using中得到 a 。Long.getLongValue()
BigDecimal bigD = new BigDecimal(longVal);
于 2009-05-28T15:50:44.910 回答
2
您需要创建一个新的 BigDecimal 对象
Long test = new Long (10);
BigDecimal bigD = new BigDecimal(test.longValue());
于 2009-05-28T15:52:43.140 回答
0
你必须创建一个新的 bigDecimal
于 2009-05-28T15:52:01.457 回答