㈠ java程序中怎麼保留一位小數
java中保留1位小數, 通常可以使用字元串格式化的方式, 或者利用BigDecimal 來實現
參考代碼
importjava.math.BigDecimal;
publicclassTest{
publicstaticvoidmain(String[]args){
doubled1=3.02;
System.out.println(d1);
//利用字元串格式化的方式實現四捨五入,保留1位小數
Stringstr1=String.format("%.1f",d1);//1代表小數點後面的位數,不足補0.f代表,後面的數據d1是浮點類型
System.out.println(str1);
//利用BigDecimal來實現四捨五入.保留一位小數
doublef1=newBigDecimal(d1).setScale(1,BigDecimal.ROUND_HALF_UP).doubleValue();
//1代表保留1位小數
//BigDecimal.ROUND_HALF_UP代表使用四捨五入的方式
System.out.println(f1);
}
}
㈡ Java計算中,如何設定小數點保留位數
方式一:
四捨五入
double f = 111231.5585;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
保留兩位小數
方式二:
java.text.DecimalFormat df =new java.text.DecimalFormat(」#.00″);
df.format(你要格式化的數字);
例:new java.text.DecimalFormat(」#.00″).format(3.1415926)
#.00 表示兩位小數 #.0000四位小數 以此類推…
方式三:
double d = 3.1415926;
String result = String .format(」%.2f」);
%.2f %. 表示 小數點前任意位數 2 表示兩位小數 格式後的結果為f 表示浮點型。
㈢ java金額轉換的問題,想要保留小數點後兩位,這樣會下標越界該怎麼改
哈?你的程序好復雜,我都沒看明白
BigDecimal直接設置小數並設置四捨五入的方式不就好了嗎?
㈣ java 保留小數點幾位的問題!!!!
2個方法都沒錯,是你取了一半
=
=|
第一個:
寫成num+=df.format(Vp[x][y])+",";
就可以了.
第二個:
float
i=((int)(Vp[x][y]*100))/100f;
意思是把這個double變數乘以100再取整,然後除以100得到的就是小數點後有兩位的實數,要用字元串形式請自行轉換.如果要保留3位就用1000.
PS:
1.
第一個方法是比較標準的寫法.不推薦第二種寫法.
2.
DecimalFormat是否進行了四捨五入我不知道,但是(int)可是沒有的,它是直接把後面的數字截掉了.
㈤ java 保留小數點後2位
給你說個比較簡單的方法吧,不知道你有沒用學過c語言,c和c++都有格式化輸出函數:printf()。
Java也有同樣的格式化輸出,針對你的這個問題可以這么寫
System.out.printf("%.2f",d);//d是一個double或float類型,保留小數點後兩位
這只是printf的某一種用法,建議你去看看它的其他更多的用法。
㈥ java計算結果 小數點後保留兩位
System.out.println(Double.parseDouble(new
DecimalFormat("#.##").format(a))+ " " +
Double.parseDouble(new DecimalFormat("#.##").format(b)));
把輸出語句換成這個就行了。
㈦ java中保留小數點後幾位是怎麼設的
有兩種情況:
1、只要輸出結果的時候可以用以下方法:
double x1 = 0.026;
System.out.println(String.format("%.2f", x1));
結果:0.03
2、使用數據轉換(4種方法)
//方案一:
get_double = (double)(Math.round(result_value*100)/100.0)
//方案二:
DecimalFormat df = new DecimalFormat("#.##");
get_double = Double.ParseDouble(df.format(result_value));
//方案三:
get_double = Double.ParseDouble(String.format("%.2f",result_value));
//方案四:
BigDecimal bd = new BigDecimalresult_value();
BigDecimal bd2 = bd.setScale(2,BigDecimal .ROUND_HALF_UP);
get_double = Double.ParseDouble(bd2.ToString());
㈧ java、怎樣簡便的保留小數點後兩位。
有兩種情況:
1、只要輸出結果的時候可以用以下方法:
double x1 = 0.026;
System.out.println(String.format("%.2f", x1));
結果:0.03
2、使用數據轉換(4種方法)
//方案一:
get_double = (double)(Math.round(result_value*100)/100.0)
//方案二:
DecimalFormat df = new DecimalFormat("#.##");
get_double = Double.ParseDouble(df.format(result_value));
//方案三:
get_double = Double.ParseDouble(String.format("%.2f",result_value));
//方案四:
BigDecimal bd = new BigDecimalresult_value();
BigDecimal bd2 = bd.setScale(2,BigDecimal .ROUND_HALF_UP);
get_double = Double.ParseDouble(bd2.ToString());