zoukankan      html  css  js  c++  java
  • 如何保留小数点后N位?

    2014年10月17日09:48:39

    在做项目中遇到的,要把想显示的数据进行规定小数位的保留,下面写一下用过的方法:

    1. BigDecimal 方法(我做项目的时候用的方法)

     代码:

    java.math.BigDecimal
    BigDecimal bd = new BigDecimal("3.14159265");
    bd = bd.setScale(3,BigDecimal.ROUND_HALF_UP); 

    BigDecimal aa = new BigDecimal("3.1");
    aa = aa.setScale(3,BigDecimal.ROUND_HALF_UP);

    这里面的bd是自定义的变量,即最后取得小数点后若干位的数,3表示小数点后两位

    输入结果:

    bd=3.142

    aa=3.100

    2.DecimalFormat 方法

     

    DecimalFormat df1 = new DecimalFormat(“0.0″); //保留1位小数,带前导零
    
    DecimalFormat df2 = new DecimalFormat(“#.#”); //保留1位小数,可以不带前导零
    
    DecimalFormat df3 = new DecimalFormat(“000.00″); //保留2位小数,带前导零
    
    DecimalFormat df4 = new DecimalFormat(“###.##”); //保留2位小数,可以不带前导零
    

     

          模式中#为可选,存在则出现,不存在则不出现;
          模式中0为必须,存在则为具体数字,不存在则为零;

    例如:

     

    DecimalFormat df1 = new DecimalFormat("0.0"); //保留1位小数,带前导零
    DecimalFormat df2 = new DecimalFormat("#.#"); //保留1位小数,可以不带前导零
    DecimalFormat df3 = new DecimalFormat("000.000"); //保留2位小数,带前导零
    DecimalFormat df4 = new DecimalFormat("###.###"); //保留2位小数,可以不带前导零
    		
    System.out.println(df1.format(31.1556));
    System.out.println(df2.format(31.1556));
    System.out.println(df3.format(31.1556));
    System.out.println(df4.format(31.1556));
    System.out.println(df3.format(31.15));
    System.out.println(df4.format(31.15));
    

     

    输出结果:

    31.2
    31.2
    1531.156
    1531.156
    1531.150
    1531.15

    结论:

    1.df.format(double)的最终输出类型是String类型,但是参数必须为double类型

    2.模式中#为可选,存在则出现,不存在则不出现;

       模式中0为必须,存在则为具体数字,不存在则为零;

    3.整数位假如超过了本身定义的位数,那么就将整数位全部位数都显示出来。


     

     

     

     

  • 相关阅读:
    HDU 6040 Hints of sd0061 —— 2017 Multi-University Training 1
    HDU 6038 Function —— 2017 Multi-University Training 1
    HDU 6034 Balala Power! —— Multi-University Training 1
    使用python将excel数据导入数据库
    python reload(sys)找不到,name 'reload' is not defined
    伯乐在线资讯URL
    伯乐在线文章URL
    慕课网python分布式爬虫打造搜索引擎视频中爬取伯乐网文章
    javascript HTML DOM 简单介绍
    css样式大全
  • 原文地址:https://www.cnblogs.com/smilefortoday/p/4030339.html
Copyright © 2011-2022 走看看