当前位置 : 主页 > 编程语言 > java >

使用工具类-java精确到小数点后6位

来源:互联网 收集:自由互联 发布时间:2023-01-30
目录 工具类-java精确到小数点后6位 有了下面解决方法 java除法运算问题(保留小数) 工具类-java精确到小数点后6位 验证要求,必须精确到小数点后6位,但是后面都是0的话,double会省
目录
  • 工具类-java精确到小数点后6位
    • 有了下面解决方法
  • java除法运算问题(保留小数)

    工具类-java精确到小数点后6位

    验证要求,必须精确到小数点后6位,但是后面都是0的话,double会省略0,正则验证不通过,所以

    有了下面解决方法

    精确到小数点后六位,若最后一位是0则用1代替。

    private double getSixScale(String s) {
        //先精确到后6位,并转为字符串
        String sixScaleString = new BigDecimal(s).setScale(6, BigDecimal.ROUND_HALF_UP).toString();
        //若字符串最后一位是0,则用1代替
        if ("0".equals(sixScaleString.substring(sixScaleString.length() - 1))) {
            sixScaleString = sixScaleString.substring(0, sixScaleString.length() - 1) + "1";
        }
        //再转为double
        return new BigDecimal(sixScaleString).doubleValue();
    }

    java除法运算问题(保留小数)

    编程的人都知道,java中的“/”、“%”运算,其中前者为取整,后者取余数。

    那么有没有快捷的运算方法取正常的运算结果呢?

    查了资料,发现很简单。

    代码如下:

    /**
     * TODO 除法运算,保留小数
     * @author 袁忠明
     * @date 2018-4-17下午2:24:48
     * @param a 被除数
     * @param b 除数
     * @return 商
     */
    public static String txfloat(int a,int b) {
        // TODO 自动生成的方法存根
     
        DecimalFormat df=new DecimalFormat("0.00");//设置保留位数
    
        return df.format((float)a/b);
       
    }

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。

    上一篇:springboot中jsp配置tiles全过程
    下一篇:没有了
    网友评论