如何把Java的double類型變量保留兩位小數


已知 雙精度標量 f,  如果想以字符串形式輸出,小數點后保留2位,可直接通過C語言的輸出格式,System.out.printf("%.2f", f), 達到目的。

如果想要先轉變成小數點后保留2位的雙精度變量,然后再輸出,可以嘗試用 f 作參數,創建一個 BigDecimal 對象 b,再 調用 BigDeciaml 對象的 setScale 方法,以取得另一個 小數點后2位的新對象,最后,通過這個新對象,調用 方法:doubleValue(),  以取得雙精度變量 f1. 最后,再輸出 f1。

import java.math.*; public class A { public static void main(String args[]) { double f = 111231.558564; System.out.printf("直接將雙精度的變量 f, 按C語言的輸出格式輸出:%.2f\n",f); BigDecimal b = new BigDecimal(f); double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); System.out.println("f1 是小數點后只有兩位的雙精度類型數據:" + f1); // f1 是雙精度類型 } } 

輸出是:

直接將雙精度的變量 f, 按C語言的輸出格式輸出:111231.56
f1 是小數點后只有兩位的雙精度類型數據:111231.56

參考網頁:

http://www.jb51.net/article/46010.htm


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM