钱,金额,money的格式化输出

private static String getMoneyString(String money) throws Exception{
        if(!isNumber(money)){
            throw new Exception("格式错误:"+money);
        }
        NumberFormat nf = new DecimalFormat("##.00");
        BigDecimal big=new BigDecimal(money);
        big.setScale(2, BigDecimal.ROUND_HALF_UP);
        money=nf.format(big);
        if(money.startsWith(".")){
            money="0"+money;
        }
        return money;
    }

    private static boolean isNumber(String str) {
        Pattern pattern = Pattern.compile("[-+]?[0-9]+.?[0-9]+");
        Matcher isNum = pattern.matcher(str);
        if (!isNum.matches()) {
            return false;
        }
        return true;
    }
    private static String getMoneyString(BigDecimal big) throws Exception{
        if(big==null){
            big=new BigDecimal("0.00");
        }
        big.setScale(2, BigDecimal.ROUND_HALF_UP);
        String money=big.toString();
        NumberFormat nf = new DecimalFormat("##.00");
        money=nf.format(big);
        if(money.startsWith(".")){
            money="0"+money;
        }
        return money;
    }
    public static void main(String[] args) throws Exception{
        String m="0.08";
        BigDecimal big=new BigDecimal("2.33");
        System.out.println(getMoneyString(m));
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值