double資料控制保留小數的幾種方法

2021-08-07 22:21:18 字數 1840 閱讀 2859

現象:

將double保留小數

方法:

1:使用decimalformat轉換、返回的是string字串型別

2:使用函式

3:使用bigdecimal、bigdecimal.round_half_up:表示四捨五入、前面數字表示保留位數

4: %.2f、%.4f表示保留小數

* 1.使用decimalformat轉換

* 返回的是string字串型別

*/double a=122.25138;

decimalformat df2 = new decimalformat("#.00");

decimalformat df4 = new decimalformat("#.0000");

string a1=df2.format(a);

string a2=df4.format(a);

system.out.println(a1); //保留兩位小數

system.out.println(a2); //保留四位小數

/**

* 使用函式

*/double b=122.25138;

double d = (double) math.round(b * 100) / 100;

system.out.println(d);

double c=122.25638;

double e = (double) math.round(c * 100) / 100;

system.out.println(e);

/**

* 使用bigdecimal

* bigdecimal.round_half_up:表示四捨五入

* 前面數字表示保留位數

*/double f=122.25138;

bigdecimal g = new bigdecimal(f);

double h = g.setscale(2,bigdecimal.round_half_up).doublevalue();

system.out.println(h);

double h2 = g.setscale(4,bigdecimal.round_half_up).doublevalue();

system.out.println(h2);

/**

* %.2f、%.4f表示保留小數

*/double d = 122.35338;

string d1 = string.format("%.2f", d);

string d2 = string.format("%.4f", d);

system.out.println(d1);

system.out.println(d2);

double保留兩位小數

一 返回double型別 方法1 double d 1.005 d double math.round d 100 100 方法2 bigdecimal.round half up表示四捨五入 bigdecimal.round half down表示五舍六入 bigdecimal.round up表...

Double保留後小數字的方法

1.使用math類的round方法 能四捨五入 double d 114.145 d double math.round d 100 100 system.out.println d 2.使用bigdecimal類 表示四捨五入,也是五舍六入,表示進製處理 就是直接加1 表示直接去掉尾數。doubl...

String轉double保留兩位小數

關於此問題,網上一些答案不太靠譜 通過實踐,此處只提供乙個辦法 string price cny map.get cny double cny double.parsedouble price cny 這個是轉為double型別 decimalformat df new decimalformat ...