A. 請問java提供什麼方法實現將一個浮點數,四捨五入只保留小數點後兩位
第一:從資料庫讀出時可以進行操作,將讀出的數據進行處理後輸出,這里可以用資料庫提供的方法。這里不多提。
第二:也可以用JAVA進行處理,方法很多。
這里說兩種吧:
第一
BigDecimal bd = new BigDecima("5.14881");
bd = bd.setScale(2,BigDecimal.ROUND_HALF_UP); System.out.println(bd);
第二
static double convert(double value){
long l1 = Math.round(value*100); //四捨五入
double ret = l1/100.0; //注意:使用 100.0 而不是 100
return ret;
}
public static void main(String[] args) {
// BigDecimal bd = new BigDecimal("3.14159265");
// bd = bd.setScale(2,BigDecimal.ROUND_HALF_UP);
double bd = convert(3.14559);
System.out.println(bd);
}
B. JAVA如何把一個float四捨五入到小數點後2位,4位,或者其它指定位數
你好:
floata=123.2354f;
floatb=(float)(Math.round(a*100))/100;輸出123.24
如果想要3位就是把2個100都換成1000
C. 如何在java中輸出格式為四捨五入
方法如下:
double d; //d為需要四捨五入的浮點數
int i=(int)(d+0.5); //i為四捨五入後的整數
如果d小數點後的數是0~4,那麼d+0.5之後小數點後的數是5~9,將其轉化為int,捨去小數點後的數,只保留原先的整數部分
如果d小數點後的數是5~9,那麼d+0.5之後小數點後的數是0~4,整數部分的個位數+1,將其轉化為int,捨去小數點後的數,只保留+1之後的整數部分
以下是示例代碼:
D. 請問java提供什麼方法實現將一個浮點數,四捨五入只保留小數點後兩位
你好!
(float)Math.round(yournum*100)/100;
yournum
就是你給出的浮點數,然後執行這句話就是你要的結果。以後提問題最好給點懸賞分。
打字不易,採納哦!
E. 如何把java得出的數值,保留小數點2位四捨五入
我寫的C語言的演算法,應該你可以轉換下吧?呵呵!
就是通過整形數據的特點了;
例如該變數為float
x;浮點型數據
四捨五入的演算法為:
{int
i=0;
整型數據;
i=(2*x*100+1)/2;
x=(float)i/100;
}
當保留小數點後兩位是用100;3為是1000,1位是當然是10了;
明白?
唉!沒學過,看著有點困難。
F. java中小數怎麼四捨五入
按照你的要求為不確定保留幾位小數的字元串做四捨五入的Java程序如下
import java.math.BigDecimal;
public class A {
public static void main(String[] args) {
String s="0.00000999999997";
//四捨五入,length是小數位數
int length=s.substring(s.indexOf(".")+1).length();
String s1=String.format("%."+(length-1)+"f",new BigDecimal(s));
//去尾部0
BigDecimal bd=new BigDecimal(s1).stripTrailingZeros();
System.out.println(bd.toPlainString());
}
}
G. 如何把java得出的數值,保留小數點2位四捨五入
// 方式一:
double f = 3.1516;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
// 方式二:
new java.text.DecimalFormat("#.00").format(3.1415926);
// #.00 表示兩位小數 #.0000四位小數 以此類推…
// 方式三:
double d = 3.1415926;
String result = String.format("%.2f", d);
// %.2f %. 表示 小數點前任意位數 2 表示兩位小數 格式後的結果為f 表示浮點型。
//方法四:
Math.round(5.2644555 * 100) * 0.01d;
//String.format("%0" + 15 + "d", 23) 23不足15為就在前面補0
H. 要四捨五入保留一位小數,JAVA如何實現
doublex1=0.026;
BigDecimalbd=newBigDecimalresult_value();
BigDecimalbd2=bd.setScale(1,BigDecimal.ROUND_HALF_UP);
get_double=Double.ParseDouble(bd2.ToString());
I. java中,強制轉換符把float轉換為int時,按四捨五入,還是直接丟掉小數部分
直接舍掉小數 比如float是4.7 轉換成int 後是4 而不是5 要四捨五入的話轉換前先加上0.5
比如 int i ; double j = 4.7; i = (int)(j+0.5);