-
/*
-
* 这里假设精确到小数点后5位
-
*/
-
public
class
AccurateDecimalPart {
-
public
static
void
main(String[] args) {
-
double
d =
3.1415926535
;
-
/*第一种方法,直接用格式化输出*/
-
System.out.format(
“%.5f”
,d);
-
System.out.println();
-
-
/*第二种方法,使用DecimalFormat*/
-
DecimalFormat df =
new
DecimalFormat();
-
df.setMinimumFractionDigits(
5
);
-
System.out.println(df.format(d));
-
-
/*第三种方法*/
-
BigDecimal bd =
new
BigDecimal(d,
new
MathContext(
6
, RoundingMode.HALF_UP));
-
System.out.println(bd);
-
-
/*第四种方法是除法操作然后保留到小数点后5位,对于一个数可以除以1然后保留*/
-
BigDecimal bd2 =
new
BigDecimal(d);
-
System.out.println(bd2.divide(
new
BigDecimal(
1
),
5
,RoundingMode.HALF_UP));
-
-
}
-
}