/**
* 将数字转换为金额显示,每三位逗号隔开,保留decimal位小数
*
* @param money 数字
* @param decimal 小数位
* @return
*/
public static String moneyFormat(BigDecimal money, int decimal) {
if (money == null) {
return null;
} else if (new BigDecimal(0).equals(money)) {
return "0";
} else if (decimal < 1) {
decimal = 2;
}
StringBuilder pattern = new StringBuilder("#,###.");
for (int i = 0; i < decimal; i++) {
pattern.append('0');
}
DecimalFormat df = new DecimalFormat(pattern.toString());
String format = df.format(money);
return format;
}
/**
* 将数字转换为金额显示,每三位逗号隔开,保留decimal位小数,并加前缀
*
* @param money 数字
* @param decimal 小数位
* @param symbol 金额前缀,如¥或$
* @return
*/
public static String moneyFormat(BigDecimal money, int decimal, String symbol) {
return symbol + moneyFormat(money, decimal);
}
/**
* 将数字转换为金额显示,每三位逗号隔开,默认保留两位小数
*
* @param money 数字
* @return
*/
public static String moneyFormat(BigDecimal money) {
return moneyFormat(money, 2);
}
将数字转换为金额显示,每三位逗号隔开,保留decimal位小数,并加前缀