2014-07-04 91 views
0

我有一个将BigDecimal转换为字符串加上货币的函数。当我使用这个号码(例如34)变成一个有很多小数的数字(例如34.000000)。从字符串中删除小数点

我能做些什么来解决这个问题,只显示34?

这里是我的功能:

row.put("Money", GcomNullPointerValidator.isNullField(formatUtils.formatCurrency(MoneyDto.getAmount().stripTrailingZeros()))); 
+0

没有看到这些功能做什么,它将很难帮助你。 – Cheruvian

回答

0

是什么语言? Java的? 如果您只想在“。”之前保留数字,则可以使用String的split()函数。 :

String mystring = "34.000000"; 
String correctstring[] = mystring.split("."); 
System.out.println(correctstring[0]); 
// display : 34 

它将删除“。”后面的所有数字。

0

在将BigDecimal转换为字符串的方法中,可以使用BigDecimal.setScale()设置小数点后的位数。例如:

BigDecimal d = new BigDecimal("34.000000"); 
BigDecimal d1 = d.setScale(2, BigDecimal.ROUND_HALF_UP); // yields 34.00 
BigDecimal d2 = d.setScale(0, BigDecimal.ROUND_HALF_UP); // yields 34