/** * 將數字轉換為金額顯示,每三位逗號隔開,保留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位小數,並加前綴