金额四舍五入,千位分隔符
/** * 四舍五入,格式化输出金额.用来显示在编辑页面上.如 3000.3456 -> 3000.35 * @param num doule 源数字 * @return String 经过格式化的金额字符串 */ public static String formatEditMoney(String s){ if ((s==null)||(s.equals(""))) return ""; DecimalFormat df = new DecimalFormat("0.00"); return df.format(Double.parseDouble(roundTool(s))); } /** * 四舍五入,格式化输出金额.用来显示在页面上.如 3000.3456 -> 3,000.35 * @param num doule 源数字 * @return String 经过格式化的金额字符串 */ public static String formatMoney(double num){ if (num==0) return ""; DecimalFormat df = new DecimalFormat("###,##0.00"); return df.format(num); } /** * 四舍五入,千分位分隔格式化输出金额,用来显示在页面上. * <p>如 3000.3456 -> 3,000.35</p> * @param num String 源数字 * @return String 经过格式化的金额字符串 */ public static String formatMoney(String s){ if ((s==null)||(s.equals(""))) return ""; return formatMoney(Double.parseDouble(s)); } /** * * 反格式化千分位分隔格式化输出金额,用来保存. * <p>如 3,000.3456 -> 3000.35</p> * @param num String 源数字 * @return String 经过 反格式的金额字符串 */ public static String unFormatMoney(String value) { if (value == null || value.trim().length() == 0 || value.equalsIgnoreCase("null")) return "0"; value = roundTool(value); DecimalFormat df = new DecimalFormat("0.00"); return df.format(Double.parseDouble(value.replace(',', Character.MIN_VALUE))); }