Java中計算百分比(DecimalFormat是NumberFormat的一個具體子類,用於格式化十進位制數字)
public String getPercent(int x,int total){
String result="";//接受百分比的值
double x_double=x*1.0;
double tempresult=x/total;
//NumberFormat nf = NumberFormat.getPercentInstance(); 註釋掉的也是一種方法
//nf.setMinimumFractionDigits( 2 ); 保留到小數點後幾位
DecimalFormat df1 = new DecimalFormat("0.00%"); //##.00% 百分比格式,後面不足2位的用0補齊
//result=nf.format(tempresult);
result= df1.format(tempresult);
return result;
}
https://blog.csdn.net/shehun11/article/details/42141923
https://blog.csdn.net/lyh147406/article/details/76165947
https://blog.csdn.net/u011106915/article/details/75361276
https://blog.csdn.net/u014704879/article/details/41479399/
DecimalForma函式預設的四捨五入的方法是銀行家演算法。跟一般的四捨五入的方法不同。
銀行家演算法:四捨六入五考慮,五後非零就進一,五後為零看奇偶,五前為偶應捨去,五前為奇要進一。
DecimalFormat 提供 RoundingMode 中定義的舍入模式進行格式化。預設情況下,它使用 RoundingMode.HALF_EVEN,
要想實現正常的四捨五入,需要呼叫decimalFormat.setRoundingMode(RoundingMode.HALF_UP)方法實現四捨五入。
相關文章
- java二進位制運算十進位制(精確運算)Java
- [計算機基礎] 計算機進位制轉換:二進位制、八進位制、十進位制、十六進位制計算機
- 計算機基礎進位制轉換(二進位制、八進位制、十進位制、十六進位制)計算機
- 設計一個十進位制轉化為隨意進位制的程式
- 如何把十進位制的數輸入用二進位制全加器,並以十進位制輸出
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- 對十進位制數字的按位輸出,取反,並求其位數
- DecimalFormat數字格式化用法“0”和“#”的區別DecimalORM
- 牛客網測試題 把十六進位制數字轉換為十進位制數字
- 計算機中的二進位制計算機
- 一看就懂二進位制、八進位制、十六進位制數轉換十進位制
- 對於十進位制數 -1023,包含符號位在內,至少需要多少個二進位制位表示該數符號
- 羅馬數字轉換成十進位制
- 關於Java中進位制轉換以及位運算問題Java
- 三種語言實現計算二進位制中1的個數(C++/Python/Java)C++PythonJava
- 使用 Haskell 將十進位制數字轉成羅馬數字Haskell
- JAVA 二進位制,八進位制,十六進位制,十進位制間進行相互轉換Java
- 二進位制中1的個數
- 計算機中進位制轉換計算機
- C++輸入十進位制數,輸出對應二進位制數、十六進位制數C++
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- n進位制轉十進位制
- 十進位制轉十六進位制
- 二進位制,八進位制,十進位制,十六進位制之間的轉換
- 十進位制——二 (八、十六 )進位制
- Java中DecimalFormat的用法JavaDecimalORM
- Java中8進位制和16進位制的表示方法Java
- Qt進位制轉換(十進位制轉十六進位制)QT
- Map集合中的具體子類TreeMap
- 計算機求解10進位制轉換任意進位制計算機
- 【劍指offer中等部分4】二進位制中1的個數(java)Java
- 【程式設計師面試金典】 寫出一個程式,接受一個十六進位制的數值字串,輸出該數值的十進位制字串。(多組同時輸入 )程式設計師面試字串
- 二進位制、十進位制與十六進位制相互轉化
- 二進位制轉十進位制快速方法
- 【進位制轉換】二進位制、十六進位制、十進位制、八進位制對應關係
- 遞迴函式實現十進位制正整數轉換為二進位制,八進位制,十六進位制遞迴函式
- Java中計算整數中唯一數字數量的3種方法Java
- 進位制之間的轉換之“十六進位制 轉 十進位制 轉 二進位制 方案”