最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java四舍五入時保留指定小數(shù)位數(shù)的五種方式

 更新時間:2020年09月03日 11:27:19   作者:```...簡單點  
這篇文章主要介紹了Java四舍五入時保留指定小數(shù)位數(shù)的五種方式,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下

方式一:

double f = 3.1516;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); 
輸出結(jié)果f1為 3.15;

源碼解讀:
  public BigDecimal setScale(int newScale, int roundingMode) //int newScale 為小數(shù)點后保留的位數(shù), int roundingMode 為變量進行取舍的方式;
  BigDecimal.ROUND_HALF_UP 屬性含義為為四舍五入

方式二:

String format = new DecimalFormat("#.0000").format(3.1415926);
System.out.println(format);
輸出結(jié)果為 3.1416

解讀:
  #.00 表示兩位小數(shù) #.0000四位小數(shù) 以此類推…

方式三:

double num = 3.1415926;
String result = String.format("%.4f", num);
System.out.println(result);
輸出結(jié)果為:3.1416

解讀:
  %.2f 中 %. 表示 小數(shù)點前任意位數(shù) 2 表示兩位小數(shù) 格式后的結(jié)果為f 表示浮點型。

方式四:

double num = Math.round(5.2544555 * 100) * 0.01d;
System.out.println(num);
輸出結(jié)果為:5.25

解讀:
  最后乘積的0.01d表示小數(shù)點后保留的位數(shù)(四舍五入),0.0001 為小數(shù)點后保留4位,以此類推......

方式五:

1. 功能

將程序中的double值精確到小數(shù)點后兩位。可以四舍五入,也可以直接截斷。
比如:輸入12345.6789,輸出可以是12345.68也可以是12345.67。至于是否需要四舍五入,可以通過參數(shù)來決定(RoundingMode.UP/RoundingMode.DOWN等參數(shù))。

2. 實現(xiàn)代碼

package com.clzhang.sample;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DecimalFormat;
import java.text.NumberFormat;
public class DoubleTest {
  /** 保留兩位小數(shù),四舍五入的一個老土的方法 */
  public static double formatDouble1(double d) {
    return (double)Math.round(d*100)/100;
  }
  public static double formatDouble2(double d) {
    // 舊方法,已經(jīng)不再推薦使用
  // BigDecimal bg = new BigDecimal(d).setScale(2, BigDecimal.ROUND_HALF_UP);
    // 新方法,如果不需要四舍五入,可以使用RoundingMode.DOWN
    BigDecimal bg = new BigDecimal(d).setScale(2, RoundingMode.UP);
    return bg.doubleValue();
  }
  public static String formatDouble3(double d) {
    NumberFormat nf = NumberFormat.getNumberInstance();

    // 保留兩位小數(shù)
    nf.setMaximumFractionDigits(2); 
    // 如果不需要四舍五入,可以使用RoundingMode.DOWN
    nf.setRoundingMode(RoundingMode.UP);
    return nf.format(d);
  }
  /**這個方法挺簡單的 */
  public static String formatDouble4(double d) {
    DecimalFormat df = new DecimalFormat("#.00");
    return df.format(d);
  }
  /**如果只是用于程序中的格式化數(shù)值然后輸出,那么這個方法還是挺方便的, 應(yīng)該是這樣使用:System.out.println(String.format("%.2f", d));*/
  public static String formatDouble5(double d) {
    return String.format("%.2f", d);
  }
  public static void main(String[] args) {
    double d = 12345.67890;
    System.out.println(formatDouble1(d));
    System.out.println(formatDouble2(d));
    System.out.println(formatDouble3(d));
    System.out.println(formatDouble4(d));
    System.out.println(formatDouble5(d));
  }
}

3. 輸出

12345.68
12345.68
12,345.68
12345.68
12345.68

以上就是Java四舍五入時保留指定小數(shù)位數(shù)的五種方式的詳細內(nèi)容,更多關(guān)于Java四舍五入時保留指定小數(shù)位數(shù)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • mybatis-plus分頁查詢的實現(xiàn)實例

    mybatis-plus分頁查詢的實現(xiàn)實例

    頁查詢是一項常用的數(shù)據(jù)庫查詢方法,本文主要介紹了mybatis-plus分頁查詢的實現(xiàn)實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-06-06
  • springboot中application.yml多環(huán)境生效規(guī)則說明

    springboot中application.yml多環(huán)境生效規(guī)則說明

    這篇文章主要介紹了springboot中application.yml多環(huán)境生效規(guī)則說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • SpringBoot如何對LocalDateTime進行格式化并解析

    SpringBoot如何對LocalDateTime進行格式化并解析

    這篇文章主要介紹了SpringBoot如何對LocalDateTime進行格式化方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Java解析zip文件,并識別壓縮包里面的文件轉(zhuǎn)換成可操作的IO流方式

    Java解析zip文件,并識別壓縮包里面的文件轉(zhuǎn)換成可操作的IO流方式

    這篇文章主要介紹了Java解析zip文件,并識別壓縮包里面的文件轉(zhuǎn)換成可操作的IO流方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Java中使用Properties配置文件的簡單方法

    Java中使用Properties配置文件的簡單方法

    這篇文章主要給大家介紹了關(guān)于Java中使用Properties配置文件的簡單方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Java實現(xiàn)四則混合運算代碼示例

    Java實現(xiàn)四則混合運算代碼示例

    這篇文章主要介紹了Java實現(xiàn)四則混合運算代碼示例,文中展示了詳細代碼,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • java不用循環(huán)語句打印數(shù)組元素的實例

    java不用循環(huán)語句打印數(shù)組元素的實例

    下面小編就為大家?guī)硪黄猨ava不用循環(huán)語句打印數(shù)組元素的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • Java?@SpringBootApplication注解深入解析

    Java?@SpringBootApplication注解深入解析

    這篇文章主要給大家介紹了關(guān)于Java?@SpringBootApplication注解的相關(guān)資料,@SpringBootApplication這個注解是Spring?Boot項目的基石,創(chuàng)建SpringBoot項目之后會默認(rèn)在主類加上,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-02-02
  • Spring?Cloud?Gateway編碼實現(xiàn)任意地址跳轉(zhuǎn)的示例

    Spring?Cloud?Gateway編碼實現(xiàn)任意地址跳轉(zhuǎn)的示例

    本文主要介紹了Spring?Cloud?Gateway編碼實現(xiàn)任意地址跳轉(zhuǎn)的示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Springboot項目中單元測試時注入bean失敗的解決方案

    Springboot項目中單元測試時注入bean失敗的解決方案

    這篇文章主要介紹了Springboot項目中單元測試時注入bean失敗的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11

最新評論

沂水县| 平塘县| 通江县| 山东省| 仪陇县| 易门县| 汪清县| 商河县| 清新县| 汝南县| 美姑县| 大关县| 北碚区| 布尔津县| 临安市| 石狮市| 衢州市| 南华县| 玛多县| 永靖县| 青龙| 永济市| 三门县| 商都县| 灵丘县| 波密县| 庄浪县| 墨脱县| 封丘县| 崇文区| 高陵县| 辉县市| 彰化县| 闽侯县| 台南县| 仁化县| 枣强县| 子长县| 泗洪县| 永胜县| 西青区|