JAVA去掉小数点后多余的0及保留小数位

1.去掉小数点后多余的0

   public static String rvZeroAndDot(String val) {

      if (val.indexOf(".") > 0) {

        // 去掉多余的0

        val = val.replaceAll("0+?$", "");

        // 如最后一位是.则去掉

        val = val.replaceAll("[.]$", "");

      }

      return val;

   }

2.保留对应小数位

        //四舍五入保留2位小数,小数位为1位的数补0,比如结果为:0.50

      System.out.println("1===="+String.format("%.2f", 0.501));

      //四舍五入保留2位小数.小数位为1位的数不会补0,比如结果为:0.5

       System.out.println("2===="+ BigDecimal.valueOf(0.501).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue());


       //百分数

       NumberFormatnt=NumberFormat.getPercentInstance();

      //设置百分数精确度2即保留一位小数

       nt.setMinimumFractionDigits(2);

       //四舍五入结果为:50.10%

       System.out.println("3===="+nt.format(0.50016));

你可能感兴趣的:(JAVA去掉小数点后多余的0及保留小数位)