NumberFormat/ DecimalFormat

Posted kikochz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NumberFormat/ DecimalFormat相关的知识,希望对你有一定的参考价值。

NumberFormat/ DecimalFormat

NuberFormatDecimalFormat的父类
格式化数字

        //获取实例
        NumberFormat instance = NumberFormat.getInstance();
        //获取带有金额的实例
        NumberFormat currencyInstance = NumberFormat.getCurrencyInstance();
        //获取带有百分比的实例
        NumberFormat percentInstance = NumberFormat.getPercentInstance();
        instance.setGroupingUsed(true);//三个数字为一组
        instance.setMaximumIntegerDigits(3);//设置整数部分的位数, 从小数点处开始计算
        instance.setMaximumFractionDigits(1);//设置小数部分的位数, 从小数点处开始计算
        //同理setMinimum
        String num = instance.format(00100000.1200);//会裁去开头的0和末尾的0
        System.out.println(num + instance.getCurrency());//获取当前系统所在位置的货币单位

DecimalFormat

DecimalFormat decimalFormat = new DecimalFormat("pattern"); 
DecimalFormat.getInstance();
DecimalFormat.getCurrencyInstance();
System.out.println(decimalFormat.format(0031.230));

小数部分都四舍五入

  • #, 开头的0和末尾的0不显示, ,分组

    如下表示整数部分3个位一组, 不限位数, 小数部分最多2位

DecimalFormat decimalFormat = new DecimalFormat(",###.##");
System.out.println(decimalFormat.format(02222.20));//2,222.2
  • 0, 整数或小数部分少位数补0
DecimalFormat decimalFormat = new DecimalFormat("0,000.00");
System.out.println(decimalFormat.format(22.26));//0,022.26
  • 如果输入小于1的小数
DecimalFormat decimalFormat = new DecimalFormat("#.00");
System.out.println(decimalFormat.format(0.26));//.26
  • %, 乘100然后加%
DecimalFormat decimalFormat = new DecimalFormat("%");
System.out.println(decimalFormat.format(0.26));//26%

以上是关于NumberFormat/ DecimalFormat的主要内容,如果未能解决你的问题,请参考以下文章

NumberFormat类

Intl.NumberFormat#format 最大整数值

NumberFormat/ DecimalFormat

GWT - 如何更改 NumberFormat 中的 NumberConstants

NumberFormat.getCurrencyInstance();失败

Intl.NumberFormat 中的多个语言环境?