支付宝支付、微信支付价格精度格式转换


 

 

支付宝支付,单位为元,精确到小数点后两位,取值范围[0.01,100000000]。

 /**
     * 此方法价格小数点小于两位会自动补全,多余两位会四舍五入保留两位小数点
     * @param price 价格
     * @return
     */
    public static String getAliPayPrice(Double price){
        DecimalFormat df = new DecimalFormat(".00");
        return df.format(price);
    }

 

 

微信支付 将元转换为分

/**
     * 元转换为分
     * @param currency 金额 
     */
    public static String changeY2F(String currency){
        int index = currency.indexOf(".");
        int length = currency.length();
        Long amLong = 0l;
        if(index == -1){
            amLong = Long.valueOf(currency+"00");
        }else if(length - index >= 3){
            amLong = Long.valueOf((currency.substring(0, index+3)).replace(".", ""));
        }else if(length - index == 2){
            amLong = Long.valueOf((currency.substring(0, index+2)).replace(".", "")+0);
        }else{
            amLong = Long.valueOf((currency.substring(0, index+1)).replace(".", "")+"00");
        }
        return amLong.toString();
    }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM