java中的数字的格式化(超详细)

数字的格式化在解决实际问题时使用非常普遍,如显示某超市的商品价格,需要保留两位小数。Java 主要对浮点型数据进行数字格式化操作,其中浮点型数据包括 double 和 float 型数据,在 java 中常用以下方法:

目录

       // 方法一 :DecimalFormat转换最简便 #.00 表示两位小数

      // 方法二:模仿C语言的输出方式

       // 方法三 String.format打印最简便

       // 方法四 商业计算中中提供精确计算

     // 方法五 使用格式化数字类 NumberFormat


1. 使用DecimalFormat和BigDecimal格式化数字

2. 使用String.format("%.2f",dbstr)

以下程序中使用5种方式来保留小数位数

import java.math.BigDecimal;

import java.text.DecimalFormat;

import java.text.NumberFormat;

public class DecimalFormatDemo {

        public static void main(String[] args) {

        double data = 111231.4585;

       // 方法一 :DecimalFormat转换最简便 #.00 表示两位小数

      DecimalFormat df = new DecimalFormat("#.00");

      System.out.println(df.format(data));

      // 方法二:模仿C语言的输出方式

      System.out.printf("%.2f\n", data);

       // 方法三 String.format打印最简便

      // %.2f %.表示 小数点前任意位数  2 表示两位小数  格式后的f表示浮点型

      System.out.println(String.format("%.2f", data));

       // 方法四 商业计算中中提供精确计算

     BigDecimal bg = new BigDecimal(data);

     double f1 = bg.setScale(3, BigDecimal.ROUND_HALF_UP).doubleValue();

     System.out.println(f1);

     // 方法五 使用格式化数字类 NumberFormat

     // 使用 getInstance 或 getNumberInstance 来获取常规数值格式。

      NumberFormat nf = NumberFormat.getNumberInstance();

      // 设置显示的数字位数 为格式化对象设定小数点后的显示的最多位,显示的最后位四舍五入

      nf.setMaximumFractionDigits(2);

       nf.setGroupingUsed(false); //去掉千分位符号   true则显示千分位符号

        System.out.println(nf.format(data));

    }

}

转自老师课件

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值