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

 

 

支付宝支付,单位为元,精确到小数点后两位,取值范围[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();
    }
复制代码

 

posted @   yvioo  阅读(1013)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示