天天看点

java精确到小数点后一位小数_Java中double变量精确到小数点后几(2)位

import java.math.BigDecimal;

import java.text.NumberFormat;

public class Java中double类型的数据精确到小数点后两位 {

public static void main(String[] args) {

//1

double f = 749.1666666666666;

BigDecimal b = new BigDecimal(f);

double f1 = b.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();

System.out.println("f="+f1);

//2

String t=new java.text.DecimalFormat("#.00").format(749.1666666666666);

System.out.println("t="+t);

//3

double d = 749.1666666666666;

String result = String .format("%.2f",d);

System.out.println("result="+result);

//4

NumberFormat ddf1=NumberFormat.getNumberInstance() ;

System.out.println("ddf1="+ddf1.format(749.1666666666666));

}

}

程序结果如下:

f=749.17

t=749.17

result=749.17

ddf1=749.167