我该如何将Long
类型转换为BigDecimal
类型?
我该如何将Long
类型转换为BigDecimal
类型?
你必须创建一个新的 BigDecimal
。
BigDecimal d = new BigDecimal(long);
为了完整性,您可以使用:
// valueOf will return cached instances for values zero through to ten
BigDecimal d = BigDecimal.valueOf(yourLong);
0-10指的是Java 6实现的版本,之前的JDK版本不确定是否包含此功能。
不应该使用BigDecimal d = new BigDecimal(long); !!
对于长整型,BigDecimal的实现不够精确。 在金融应用中,这一点非常重要!
但是,对于字符串参数,BigDecimal的实现更好!因此,请使用类似以下方式:
new BigDecimal(yourLong.toString());
有一次关于这个问题的讨论在http://www.parleys.com/上进行了。
您不能将其转换。但是,您可以创建一个新的BigDecimal
。如果您拥有非原始类型的Long
,则可以使用Long.getLongValue()
从Long
中获取long
。
BigDecimal bigD = new BigDecimal(longVal);
您需要创建一个新的BigDecimal对象
Long test = new Long (10);
BigDecimal bigD = new BigDecimal(test.longValue());