java中decimalFormat格式化数值

介绍

  • 我们经常要对数字进行格式化,比如取小数点后两位小数,或者加个百分比符号等,Java提供了DecimalFormat这个类

  • 0 和 # 的区别

    "#"可以理解为在正常的数字显示中,如果前缀与后缀出现不必要的多余的0,则将其忽略。

代码示例

package com.tool.decimalFormat;

import java.text.DecimalFormat;

/**
 *
 */
public class Demo1 {
    public static void main(String args[]) {
        double pi = 123.1512134567;
        // 取整数部分
        String s1 = new DecimalFormat("0").format(pi);
        System.out.println("取整数:" + s1);//123

        // 取小数点后1位,四舍五入
        String s2 = new DecimalFormat("0.0").format(pi);
        System.out.println(s2);//123.2

        // 取小数点后3位,不足部分取0
        String s3 = new DecimalFormat("0.000").format(pi);
        System.out.println(s3);//123.150

        // 百分比
        String s4 = new DecimalFormat("0.0%").format(pi);
        System.out.println(s4);// 12315.0%


        // 科学计数法
        String s5 = new DecimalFormat("0.00E0").format(pi);

        System.out.println(s5);
        double d = 1234567;
        // 每三位以逗号分开
        String s6 = new DecimalFormat(",000").format(d);
        System.out.println(s6);

        //小数点后3位,如果是0则不显示
        String s7 = new DecimalFormat("#.###").format(123.300);
        System.out.println(s7);//123.3

    }

}


posted @ 2018-04-12 22:59  墮落方能自由  阅读(3752)  评论(0编辑  收藏  举报