Double值保留两位小数的四种方法

public class DoubleTest {
    //保留两位小数第三位如果大于4会进一位(四舍五入)
    double f = 6.23556;
    /**
      *使用精确小数BigDecimal
      */
    public void fun1() {
        BigDecimal bg = new BigDecimal(f);
        /**
         * 参数:
                newScale - 要返回的 BigDecimal 值的标度。
                roundingMode - 要应用的舍入模式。
          返回:
                一个 BigDecimal,其标度为指定值,其非标度值可以通过此 BigDecimal 的非标度值乘以或除以十的适当次幂来确定。
         */
        double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
        System.out.println(f1);
    }

    /**
     * DecimalFormat转换最简便
     */
    public void fun2() {
        DecimalFormat df = new DecimalFormat("#.00");
        System.out.println(df.format(f));
    }

    /**
     * String.format打印最简便
     */
    public void fun3() {
        System.out.println(String.format("%.2f", f));
    }
   /**
     *使用NumberFormat
     */    public void fun4() {
        NumberFormat nf = NumberFormat.getNumberInstance();
        /**
         * setMaximumFractionDigits(int newValue)
           设置数的小数部分所允许的最大位数。
         */
        nf.setMaximumFractionDigits(2);
        System.out.println(nf.format(f));
    }

    public static void main(String[] args) {
        DoubleTest dt = new DoubleTest();
        dt.fun1();
        dt.fun2();
        dt.fun3();
        dt.fun4();

    }
}

原文:https://blog.csdn.net/hello_word2/article/details/81808827

原文地址:https://www.cnblogs.com/peachh/p/12130419.html

时间: 2024-10-25 11:32:51

Double值保留两位小数的四种方法的相关文章

JS保留两位小数的几种方法

四舍五入 以下处理结果会四舍五入: var num =2.446242342; num = num.toFixed(2); // 输出结果为 2.45 不四舍五入 以下处理结果不会四舍五入: 第一种,先把小数边整数: Math.floor(15.7784514000 * 100) / 100 // 输出结果为 15.77 第二种,当作字符串,使用正则匹配: Number(15.7784514000.toString().match(/^\d+(?:\.\d{0,2})?/)) // 输出结果为

php保留两位小数的三种方法

around:a.代码: <?php $num1 = round(5,2); $num2 = round(5.123,2); echo $num1.PHP_EOL; echo $num2.PHP_EOL; b.输出: 5 5.12 sprintf:a.代码: <?php $num1 = sprintf('%.2f',5); $num2 = sprintf('%.2f',5.123); echo $num1.PHP_EOL; echo $num2.PHP_EOL; b.输出: 5.00 5.12

Double 数据保留两位小数一:五舍六入

1 package com; 2 3 public class T2 { 4 5 public static void main(String[] args) { 6 7 System.out.println(calculateProfit(0.233)); 8 System.out.println(calculateProfit(0.235)); 9 System.out.println(calculateProfit(0.237)); 10 System.out.println(calcul

java,中双精度double控制保留两位小数,js控制两位小数

Java DecimalFormat dcmFmt = new DecimalFormat("0.00"); double db = 12333.353; System.out.println(dcmFmt.format(db)); JS <script type="text/javascript"> //保留两位小数 //功能:将浮点数四舍五入,取小数点后2位 function toDecimal(x) { var f = parseFloat(x);

java double类型保留两位小数和四舍五入

package com.clzhang.sample; import java.math.BigDecimal; import java.math.RoundingMode; import java.text.DecimalFormat; import java.text.NumberFormat; public class DoubleTest { /** * 保留两位小数,四舍五入的一个老土的方法 * @param d * @return */ public static double fo

【开发日志】Long/Bigdecimal/double数据类型保留两位小数

今天开发碰到个需求就是保证回显到页面的数据保留两位小数,实际我们的数据是八位小数 可以明显的看到Bigdecimal是八位,虽说Long类型不用保留两位(强迫症),但是我还是想保留 1.Long类型 String.format("%.2f",参数) .第二个参数是double数据类型,String,int,Long 类型是不行的,float可以 2.Bigdecimal java.text.DecimalFormat df =new java.text.DecimalFormat(&q

highcharts y軸數值保留两位小数

标签及字符串格式化 最后修改时间:2017-03-23 18:02 Highcharts 图表中的任意文字都可以通过 format (格式化字符串)或 formatter (格式化回调函数) 属性来进行修改,format 总是有对应的一个或多个 formatter ,其中 format 字符串简单方便,formatter 回调函数则更加灵活,他们两都是兼容 JSON 格式的. 一.HTML标签 默认情况下,Highcharts 中的文字及标签使用 SVG 渲染的,所有在默认情况下,Highcha

Java保留两位小数的几种做法

1.  String类型数字始终保留两位小数 public static void main(String[] args) {   DecimalFormat format = new DecimalFormat("0.00");  String abc ="100.456";  String a = format.format(new BigDecimal(abc)); System.out.println(a); } 2. 另外几种办法 原文 http://mo

double 类型保留两位小数

1.Math.Round(0.333333,2);//按照四舍五入的国际标准2. double dbdata=0.335333; string str1=String.Format("{0:F}",dbdata);//默认为保留两位3. float i=0.333333; int j=(int)(i * 100); i = j/100;4. decimal.Round(decimal.Parse("0.3333333"),2)5. private System.Gl