JAVA Double 型保留指定位

import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.NumberFormat;

public class Doubles {

    public static void main(String[] args) {
        double x = 3.1415926;
        double y = 0.0;
        double z = 999.689;
        /**
         * format()参数 0:不存在以0补 #:不存在则不显示
         */
        System.out.println(new DecimalFormat("0.000").format(z));// 999.000
        DecimalFormat format = new DecimalFormat("#.00");// 小数点后保留两位
        System.out.println(format.format(x));// 3.14
        System.out.println(format.format(y));// 0.00
        System.out.println(format.format(z));// 999.69
        System.out.println(new BigDecimal(z).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());// 999.69
        System.out.println(new BigDecimal(z).setScale(5, BigDecimal.ROUND_HALF_UP).doubleValue());// 999.689
        System.out.println(new java.text.DecimalFormat("0.00").format(z));// 999.69
        System.out.println(new java.text.DecimalFormat("0.0000#").format(z));// 999.6890
        System.out.println(new java.text.DecimalFormat("0.#####").format(z));// 999.689
        System.out.println(new java.text.DecimalFormat("0").format(z));// 1000
        System.out.println(new java.text.DecimalFormat(".0").format(z));// 999.7
        NumberFormat NF = NumberFormat.getInstance();
        NF.setMaximumFractionDigits(2);
        System.out.println(NF.format(z));// 999.69
    }
}

你可能感兴趣的:(JAVA Double 型保留指定位)