A有一个字符串:“1234567” 我想使用以下格式将此String传输到BigDecimal: 12345.67 - >最后两个digets应被视为小数位。
是否有任何方法,或者我必须使用资源消耗方式,如:
String numberUnformated = 1234567;
BigDecimal number = new BigDecimal(amount.substring(0,amount.length()-2)+"."+amount.substring(amount.length()-2))
谢谢
答案 0 :(得分:4)
您可以使用
BigDecimal number = new BigDecimal("1234567") .movePointLeft(2):
不建议使用双打,因为你肯定会失去精确度而且你不会使用BigDecimal。使用货币时非常重要。
答案 1 :(得分:1)
你可以将它除以100:
BigDecimal number = new BigDecimal("1234567")
.divide(BigDecimal.valueOf(100L));