當前位置:首頁 » 編程語言 » java四捨五入保留兩位小數

java四捨五入保留兩位小數

發布時間: 2023-02-18 05:49:13

java中保留兩位小數並要求四捨五入的方法

doubled=2.345;
//格式化為String
Stringstr=String.format("%.2f",d);
System.out.println(str);
//如果需要數字,可以再d=Double.parseDouble(str)

//////////////
BigDecimalbd=newBigDecimal("2.345");//建議使用String參數
BigDecimalbd_half_even=bd.setScale(2,RoundingMode.HALF_EVEN);
BigDecimalbd_half_up=bd.setScale(2,RoundingMode.HALF_UP);
System.out.println(bd_half_even);
System.out.println(bd_half_up);
//HALF_EVEN,HALF_UP是兩種不同的四捨五入機制
//BigDecimal默認使用HALF_EVEN
//HALF_UP的效果就是經典的四捨五入
//HALF_EVEN是最科學的四捨五入,但結果和HALF_UP可能會不同

Ⅱ java 兩個數相除後四捨五入並保留兩位小數有哪些方式


1 double f = 3.1516;
BigDecimal b = new BigDecimal(f);
2 double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()
new java.text.DecimalFormat("#.00").format(3.1415926)


3 double d = 3.1415926;
String result = String.format("%.2f", d);
// %.2f %. 表示 小數點前任意位數 2 表示兩位小數 格式後的結果為f 表示浮點型。


4 Math.round(5.2644555 * 100) * 0.01d;
//String.format("%0" + 15 + "d", 23) 23不足15為就在前面補0

Ⅲ java四捨五入 保留兩位小數

因為double型小數部分會在從二進制變十進制的類型變換中產生誤差,所以x2會變成-3.80000000000003,如果要使輸出四捨五入 保留兩位小數,可以用String的format函數,方法如下:
System.out.println(String.format("%.2f", x1));
System.out.println(String.format("%.2f", x2));

Ⅳ Java幾種常見的四捨五入的方法

下面給你介紹3種常見的四捨五入:

// 方式一:BigDecimal方式

double f = 3.1315;

BigDecimal b = new BigDecimal(new Double(f).toString);

double f1 = b.setScale(3, BigDecimal.ROUND_HALF_UP).doubleValue();

注意:這里一定不要直接使用new BigDecimal(double)的構造方法,而要使用new BigDecimal(new Double(1.1315).toString())的方式,不然會出現精確問題


// 方式二:DecimalFormat方式

//DecimalFormat默認採用了RoundingMode.HALF_EVEN這種類型,而且format之後的結果是一個字元串類型String

DecimalFormat df = new DecimalFormat("#.000");

System.out.println(df.format(new BigDecimal(1.0145)));//1.014

System.out.println(df.format(new BigDecimal(1.1315)));//1.132

// 方式三:

double d = 3.1415926;

String result = String.format("%.2f", d);

// %.2f %. 表示 小數點前任意位數 2 表示兩位小數 格式後的結果為f 表示浮點型。

Ⅳ java中小數怎麼四捨五入

java中如果精確一點的小數位比較多,類型建議使用BigDecimal,資料庫存儲用decimal類型。

.你的問題是想做四捨五入,並指定精確小數位數。BigDecimal..setScale(需要精確的小數位數例如:3, BigDecimal.ROUND_HALF_UP); 如圖所示:如果想要確定小數位數,可以用正則取出需要精確的位數,再去傳輸需要精確的小數位數。

指定小數位數,並且都做四捨五入即可

熱點內容
已上傳附件 發布:2024-11-08 11:47:53 瀏覽:633
電腦配置都有哪些問題 發布:2024-11-08 11:15:29 瀏覽:727
新浪微博敏感詞資料庫 發布:2024-11-08 11:03:22 瀏覽:472
linux的終端軟體 發布:2024-11-08 11:01:46 瀏覽:204
主機如何把密碼關掉 發布:2024-11-08 10:36:25 瀏覽:720
安卓軟體如何鎖定 發布:2024-11-08 10:30:27 瀏覽:709
sql定時執行語句 發布:2024-11-08 10:29:36 瀏覽:673
邁銳寶xl值得入手哪個配置 發布:2024-11-08 10:14:13 瀏覽:634
尋歡加密 發布:2024-11-08 10:02:57 瀏覽:353
拼單源碼 發布:2024-11-08 09:58:24 瀏覽:143