Ⅰ java怎樣用float 保留2位有效小數 例如:64.02 64.00
public class Hello{
public static void main(String[] args){
float f = 12f;
java.text.DecimalFormat df = new java.text.DecimalFormat("#0.00");
String sf = df.format(f);
System.out.println();
}
}
Ⅱ java 小數點後兩位的數屬於什麼數據類型例如0.01或-0.01屬於什麼數據類型float嗎
java 中 float 類型 單精度浮點數在機內佔4個位元組,用32位二進制描述,范圍范游凱腔圍從10^-38到10^38 和 -10^38到-10^-38,必須以f 結尾
double 類型 雙精神衫度浮點數在機內佔8個位元組,孫世用64位二進制描述。范圍 10^-308到10^308 和 -10^-308到-10^-308,末位可以用d,也可以不用d
Ⅲ java中float類型保留2位小數,第3位值>0就向第二位進1 怎樣實現
可以直接通過判斷第三位的值,如果第三位乘以1000,之後對10求余,如果大於0,直接給第二位加上一個值「10」,在除以1000即可。
float f1 = 3.222f;
int num = (int) (f1 * 1000);
if (num % 10 > 0)
f1 = (num -num % 10 + 10 * 1.0f) / 1000.0f;
else
f 1= num * 1.0f / 1000.0f;
System.out.println(f);
輸出結果:3.23.
Ⅳ java中如何實現將float精確到小數點後兩位
方法1:用Math.round計算,這里返回的數字格式的.
float price=89.89;
int itemNum=3;
float totalPrice=price*itemNum;
float num=(float)(Math.round(totalPrice*100)/100);//如果要求精確4位就*10000然後/10000
方法2:用DecimalFormat 返回的是String格式的.該類對十進制進行全面的封裝.像%號,千分位,小數精度.科學計算.
float price=1.2;
DecimalFormat decimalFormat=new DecimalFormat(".00");//構造方法的字元格式這里如果小數不足2位,會以0補足.
String p=decimalFomat.format(price);//format 返回的是字元串
Ⅳ java 如何使的float保留2位或者多位小數
表明四捨五入,保留兩位小數即float ft = 134.3435f; int scale = 2;//設置位數 int roundingMode = 4;//表示四捨五入,可以選擇其他舍值方式,例如去尾,等等. BigDecimal bd = new BigDecimal((double)ft); bd = bd.setScale(scale,roundingMode); ft = bd.floatValue();方法2:importjava.text.DecimalFormat;Stringa=newDecimalFormat(###,###,###.##).format(100.12345);即float scale = 34.236323; DecimalFormat fnum = new DecimalFormat(##0.00); String dd=fnum.format(scale); System.out.println(dd); 方法3:最簡單的方法 float b = (float)(Math.round(a*100))/100;(這里的100就是2位小數點,如果要其它位,如4位,這里兩個100改成10000)
Ⅵ java 保留小數點後2位
給你說個比較簡單的方法吧,不知道你有沒用學過c語言,c和c++都有格式化輸出函數:printf()。
Java也有同樣的格式化輸出,針對你的這個問題可以這么寫
System.out.printf("%.2f",d);//d是一個double或float類型,保留小數點後兩位
這只是printf的某一種用法,建議你去看看它的其他更多的用法。