从字符串中删除小数

时间:2014-07-04 09:36:02

标签: java format bigdecimal

我有一个函数可以将BigDecimal转换为字符串加上货币。当我使用它时,数字(例如34)变成一个有很多小数的数字(例如34.000000)。

我该怎么做才能解决这个问题,只显示34?

这是我的功能:

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

2 个答案:

答案 0 :(得分:0)

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

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

它将删除"。" 之后的所有数字!

答案 1 :(得分:0)

在将BigDecimal转换为String的方法中,可以使用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