前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android中关于保留小数点位数的处理

Android中关于保留小数点位数的处理

作者头像
乱码三千
发布2021-07-29 14:51:40
2.5K0
发布2021-07-29 14:51:40
举报
文章被收录于专栏:乱码三千乱码三千

保留两位小数

方法一:

{
    double c = 3.154215;
    java.text.DecimalFormat myformat=new java.text.DecimalFormat("0.00");
    String str = myformat.format(c);
}

方式二:

{
    java.text.DecimalFormat df = new java.text.DecimalFormat("#.00"); 
    df.format(你要格式化的数字);
}

例:new java.text.DecimalFormat(“#.00”).format(3.1415926)

.00 表示两位小数 #.0000四位小数 以此类推…

方式三:

{
   double d = 3.1415926;
   String result = String .format("%.2f",d);
}

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

方法四(四舍五入):

{
    double f = 111231.5585; 
    BigDecimal b = new BigDecimal(f); 
    //保留2位小数
    double f1 = b.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue(); 
}

小数点后补0

如果float num = 3.14f; 现在需要保留5为小数。这里要知道一点,不管是Float类型还是Double类型,他们都是不会记住小数位数的,而BigDecimal就可以记住。而且这种需求我们肯定是用String来记录,因为在UI显示肯定是要转换为String类型的。

{
    float num = 3.140f;
    BigDecimal b = new BigDecimal(num);
    //保留5位并且属于四舍五入类型,当然这里的四舍五入没有任何意义,可以选择其他类型。
    b.setScale(5, BigDecimal.ROUND_HALF_UP).toStrin();
}
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-11-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 乱码三千 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 保留两位小数
  • .00 表示两位小数 #.0000四位小数 以此类推…
    • 小数点后补0
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档