bigdecimal保留2位小数_bigdecimal保留两位小数显示00

bigdecimal保留2位小数_bigdecimal保留两位小数显示00作者:RaphetS第一种方法使用DecimalFormat类举个例子,假如我们需要保留两位小数,我们可以这样写DecimalFormatdf=newDecimalFormat(“0.00”);测试如下:doubled=0.200;DecimalFormatdf=newDecimalFormat(“0.00”);System.out.println(df.format(d))…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

作者:RaphetS

第一种方法

使用DecimalFormat类

举个例子,假如我们需要保留两位小数,我们可以这样写

DecimalFormat df = new DecimalFormat("0.00");

测试如下:

double d = 0.200;DecimalFormat df = new DecimalFormat("0.00");System.out.println(df.format(d));

输出结果为:
0.20

若double d=0.000;输出结果为0.00;
若double d=0;输出结果为0.00;
若double d=41.2345;输出结果为41.23;

经测试,不管double d的值为多少,最后结果都是正常的两位小数。

同理若是保留一位小数DecimalFormat df = new DecimalFormat(“0.0”);其他以此类推

若是这种写法DecimalFormat df = new DecimalFormat(“0.00”),不管传入的任何值,均保留两位小数

还有一种写法是这样:

double d = 41.123;DecimalFormat df = new DecimalFormat("#.##");System.out.println(df.format(d));

输出结果为:
41.12

若double d=2.00,输出结果为2;
若double d=41.001,输出结果为41;
若double d=41.010,输出结果为41.01;
若double d=0,输出结果为0;
若double d=0.200,输出结果为0.2;

总结:若是这种写法DecimalFormat df = new DecimalFormat(“#.##”),则保留小数点后面不为0的两位小数,这种写法不能保证保留2为小数,但能保证最后一位数不为0;

第二种方法

测试:

double d = 0.6544;String s=String.format("%.2f",d);System.out.println(s);

输出结果为:
0.65

若double d=0.6566,输出结果为0.66;
若double d=0,输出结果为0.00;

其中String s=String.format(“%.2f”,d)表示小数点后任意两位小数,其中2为表示两位小数,若需要三位小数,把2改为3即可,其他同理。

总结:这种方法不管传入的值是多少,均保留两位小数,并且符合四舍五入的规则。

第三种方法:

使用BigDecimal类

测试:

8d63aa0616dc217c7b2d18a01008ddba.png

输入结果:1.0

若double d=0,输出结果为0.0;
若double d=1.999,输出结果为2.0;
若double d=1.89,输出结果为1.89;

总结:使用这种写法若小数点后均为零,则保留一位小数,并且有四舍五入的规则。

源码

以下为Java测试类

28de38938de193bdbadb797887d83888.png
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190267.html原文链接:https://javaforall.net

(0)
上一篇 2026年2月24日 上午9:43
下一篇 2026年2月24日 上午10:15


相关推荐

  • SimpleDateFormat不是线程安全的

    SimpleDateFormat不是线程安全的

    2021年8月14日
    39
  • 程序设计-寻找三数之和为零的三元组(Java)

    程序设计-寻找三数之和为零的三元组(Java)分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.netpackagelive.every.day.Programming;importjava.util.ArrayList;importjava.util.Arrays;/***给定一个包含n个整数的数组nums,判断nums中是否存在三个元素a、b、c,使得a+b+c=0。*找出所有满足条件且不重复的三元组。**@auth

    2022年6月21日
    24
  • axure菜单展开收起_css菜单栏的隐藏和显示

    axure菜单展开收起_css菜单栏的隐藏和显示这样可以实现菜单栏最小化,而且在你鼠标不移动到左上角时,小箭头会隐藏,效果就可以了。axure9.0版本在发布后HTML页面打开时总是在顶部弹出菜单既不美观也影响效果。本人axure小白,摸索半天后发现也不能完全关闭或者不显示(除非代码修改);解决方案就是在请求地址后面拼接。…

    2022年8月19日
    17
  • 如何通过eclipse导入web项目「建议收藏」

    如何通过eclipse导入web项目「建议收藏」如何通过eclipse导入web项目通过eclipse导入web项目的相关流程。【1】打开eclipse,单击左上角的File,File–>Import【2】打开General–>ExistingprojectsintoWorkspace–>Browse(选择需要打开的项目)注意:记得勾选下方【copyprojectintoproject】【3】所有不是在自己电脑上开发的web项目,都需要重新配置一下,单击项目右键,打开Projects【4】打开JavaBul

    2022年4月20日
    154
  • 【保姆级】零基础小白的AI编程环境搭建:Claude Code × Kimi K2 完全步骤-windows

    【保姆级】零基础小白的AI编程环境搭建:Claude Code × Kimi K2 完全步骤-windows

    2026年3月16日
    3
  • 使用jedis操作redis_hadoop集群如何使用

    使用jedis操作redis_hadoop集群如何使用在上一篇文章中小编为大家介绍的Redis最新版本Redis-5.0.5版本的集群环境安装。集群环境的使用不可能使用客户端命令的方式,肯定要集成到我们的代码中以实现数据缓存功能。对应Java来说Redis官网向用户推荐了Java客户端,如下图所示:在Redis官网推荐的众多Java客户端中,Jedis是一个比较简单而功能强大的客户端,它实现Redis服务的封装,提供了简单的API调用。下面小编就…

    2025年10月10日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号