`

Double类型保留两位小数并四舍五入

    博客分类:
  • Java
阅读更多

Double类型保留两位小数并四舍五入

package com.utils;

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DecimalFormat;
import java.text.NumberFormat;

public class DoubleFormatUtil {
	
	/**
	 * @param number 需要保留两位的数
	 * @return
	 */
	public double doubleFormat1(double number) {
		// 将double类型转为BigDecimal
		BigDecimal bigDecimal = new BigDecimal(number);  
		// 保留两位小数,并且四舍五入
		return bigDecimal.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();  
	}
	
	/**
	 * @param number 需要保留两位的数
	 * @return
	 */
	public double doubleFormat2(double number) {
        DecimalFormat decimalFormat = new DecimalFormat("#.00");
        return Double.valueOf(decimalFormat.format(number));
    }
	
	/**
	 * @param number 需要保留两位的数
	 * @return
	 */
	public double doubleFormat3(double number) {
		String result = String.format("%.2f", number);
		return Double.valueOf(result);
	}
	
	/**
	 * @param number 需要保留两位的数
	 * @return
	 */
	public double doubleFormat4(double number) {
        NumberFormat numberFormat = NumberFormat.getNumberInstance();
        // 保留两位小数
        numberFormat.setMaximumFractionDigits(2); 
        // 如果不需要四舍五入,可以使用RoundingMode.DOWN
        numberFormat.setRoundingMode(RoundingMode.HALF_UP);
        return Double.valueOf(numberFormat.format(number));
    }
	
	/**
	 * @param number 需要保留两位的数
	 * @return
	 */
	public double doubleFormat5(double number) {
		return (double)Math.round(number * 100) / 100;
	}
	
	// main
	public static void main(String[] args) {
		DoubleFormatUtil dfu = new DoubleFormatUtil();
		
		System.out.println(dfu.doubleFormat1(12.45645));
		System.out.println(dfu.doubleFormat2(12.45645));
		System.out.println(dfu.doubleFormat3(12.45645));
		System.out.println(dfu.doubleFormat4(12.45645));
		System.out.println(dfu.doubleFormat5(12.45645));
	}

}

 

分享到:
评论

相关推荐

    js四舍五入-保留两位小数

    ### JavaScript 四舍五入并保留两位小数的方法 在JavaScript中实现四舍五五并保留两位小数的功能是常见的需求之一,特别是在处理财务数据或需要精确显示数值的应用场景下。根据提供的信息,我们将深入探讨如何在...

    C# 截取小数,不四舍五入

    例如,如果我们想要保留3位小数且不四舍五入,可以使用以下代码: ```csharp double number = 3.14159; string formattedNumber = number.ToString("0.000"); // 输出 "3.141" ``` 这里的`"0.000"`是一个格式化...

    C#.NET,JAVASCRIPT数字进行四舍五入保留两位小数

    这里我们将深入探讨C#.NET和JavaScript中如何实现数字四舍五入并保留两位小数的方法。 首先,让我们看看C#.NET中的解决方案。在C#中,我们可以使用`Math.Round`方法来实现四舍五入。这个方法接受一个double类型的值...

    保留2位小数

    在上面的代码中,我们创建了一个`DecimalFormat`对象,并使用`format`方法将`double`类型的`num`转换为保留两位小数的字符串。这个过程可以有效地处理各种浮点数,无论是正数、负数还是零。 另外,如果原始数字的...

    java保留两位小数问题

    本文将深入探讨如何在Java中保留两位小数,并覆盖四舍五入、浮点数精确计算以及避免科学记数法等问题。 #### 四舍五入保留两位小数 四舍五入是数学中的一个基本概念,指的是当一个数的小数部分小于等于0.5时,将其...

    double保留小数

    - `BigDecimal.ROUND_HALF_UP`:四舍五入,向“最接近的邻居”舍入,除非两者都同样接近,此时舍入远离零的方向。 - `BigDecimal.ROUND_HALF_DOWN`:五舍六入,向“最接近的邻居”舍入,除非两者都同样接近,此时...

    Java保留两位小数方法大全

    - `setScale(2, BigDecimal.ROUND_HALF_UP)` 表示将该`BigDecimal`对象的小数点后保留2位,并采用四舍五入的方式处理第三位及以后的数字。 - 最终得到的`double f1`即为保留两位小数的结果。 #### 方法二:使用`...

    python3给double保留两位小数的三种方法

    double保留两位小数,包含四舍五入,也包含不四舍五入的算法,一共3种方法,拿走可以随便用。

    CSharp小数位数保留的方法大全

    这里的 `{0:N2}` 是一个格式化字符串,`N2` 表示使用标准数字格式并保留两位小数。 #### 5. 使用 `ToString` 方法 `ToString` 方法也可以用来保留指定数量的小数位数,并支持四舍五入: ```csharp double s = 0....

    double类型转换

    ### 保留两位小数的方法 #### 使用`DecimalFormat` 在Java中,`java.text.DecimalFormat`类提供了一种非常灵活的方式来格式化数字,包括`double`类型。通过定义特定的模式(pattern),可以精确控制数字的格式,包括...

    C# Double保留小数点后面位数

    在这个例子中,使用的格式字符串是 `"0.00"` ,这表示输出的数字应该保留两位小数,并且如果小数部分不足两位,则在末尾补零。 #### 示例代码解析: 1. **初始化Double变量**: - `Double test1 = 1000.0;` - `...

    java使double保留两位小数的多方法 java保留两位小数

    在这个例子中,`setScale(2, BigDecimal.ROUND_HALF_UP)` 会将double类型的 `f` 保留两位小数,如果第三位大于或等于5,则向上舍入。 ### 方法二:使用DecimalFormat进行格式化 `DecimalFormat` 是 `java.text` ...

    C语言四舍五入的函数

    它接受一个双精度浮点数`t`和一个整数`n`作为参数,`t`代表要进行四舍五入操作的数字,而`n`则表示四舍五入到小数点后第`n`位。函数内部首先利用`n_hundred()`函数计算出10的`n`次幂,然后将其与`t`相乘,转换成整数...

    Delphi四舍五入

    - `pValue`: Double 类型,表示要进行四舍五入处理的浮点数值。 - `pDigit`: Integer 类型,表示保留的小数位数。 - **返回值**:Double 类型,四舍五入后的结果。 #### 四、代码详解 1. **变量声明**: ```...

    C#中Decimal类型截取保留N位小数并且不进行四舍五入操作

    开发中,需要使Decimal类型数据保留小数点后的两位小数且不需要进行四舍五入操作,即直接截取小数点后面的两位小数即可。例如:1.245M –> 1.24,而不是1.25 使用Decimal.Round()方法可以实现保留Decimal类型数据...

    强制保留小数点后几位

    在这个例子中,`precision`被设为`0.01`,意味着我们想要保留两位小数。 - `double b = (int)(a / precision + 0.5) * precision;` 这是整个逻辑的核心部分。首先,将原始浮点数`a`除以`precision`,然后加上`0.5`...

    c#将带有小数点的数值四舍五入为整数

    这个方法接收一个双精度浮点数作为输入,并返回四舍五入后的最接近整数的`double`类型值。例如: ```csharp double result = Math.Round(3.5); // 结果为4.0 ``` 2. **Math.Round(double a, int digits)** 此...

    asp.net小数点四舍五入的方法

    ` 这里`f2`表示保留两位小数并进行四舍五入。 5. **String.Format方法** 使用`String.Format`方法结合格式化字符串,也可以达到四舍五入的效果。如:`string result = String.Format("{0:N2}", 0.55555);` 和 `...

    java数值取整及保留两位小数

    java技术,对象操作:数值取整和保留两位小数,将数值转换成字符串。

    格式化数字保留N位小数

    格式化数字保留N位小数 System.Globalization.NumberFormatInfo provider = new System.Globalization.NumberFormatInfo(); provider.NumberDecimalDigits =intDecLength; //要设定的小数位数 double strCashAmt=...

Global site tag (gtag.js) - Google Analytics