Java四舍五入保留两位小数

Java四舍五入保留两位小数文章目录Java四舍五入保留两位小数一、前言环境二、正文BigDecimalDecimalFormatMathcommons-math3String#formatJava四舍五入保留两位小数一、前言环境开发工具:IntelliJIDEAJDK:1.8BigDecimal:https://docs.oracle.com/javase/8/docs/api/java/math/BigDecimal.htmlDecimalFormat:https://docs.oracle.com/java

大家好,又见面了,我是你们的朋友全栈君。

Java四舍五入保留两位小数

一、前言

环境

  • 开发工具:IntelliJ IDEA
  • JDK:1.8

BigDecimal:https://docs.oracle.com/javase/8/docs/api/java/math/BigDecimal.html

DecimalFormat:https://docs.oracle.com/javase/8/docs/api/java/text/DecimalFormat.html

Math:https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html

apache commons-math:https://commons.apache.org/proper/commons-math/

maven repository:https://mvnrepository.com/

二、正文

BigDecimal

  • RoundingMode
算法 说明
ROUND_UP 舍入模式从零舍入
ROUND_DOWN 舍入模式向零舍入
ROUND_CEILING 舍入模式向正无穷大舍入
ROUND_FLOOR 舍入模式向负无穷大舍入
HALF_UP 舍入模式向“最近的邻居”舍入,除非两个邻居是等距的,在这种情况下向上舍入
HALF_DOWN 舍入模式向“最近的邻居”舍入,除非两个邻居是等距的,在这种情况下向下舍入
HAIL_EVEN 舍入模式向“最近的邻居”舍入,除非两个邻居是等距的,在这种情况下,向偶数邻居舍入
UNNECESSARY 舍入模式断言所请求的操作具有精确的结果,因此不需要舍入
  • 代码
double num = 3333.445555;
// BigDecimal
BigDecimal bigDecimal = new BigDecimal(num);
bigDecimal = bigDecimal.setScale(2, RoundingMode.HALF_UP);
System.out.println("bigDecimal="+ bigDecimal.doubleValue());

DecimalFormat

double num = 3333.445555;
// DecimalFormat
DecimalFormat decimalFormat = new DecimalFormat("#.##");
String numByDF = decimalFormat.format(num);
System.out.println("decimalFormat="+ numByDF);

Math

double num = 3333.445555;
// Math
double numByM = Math.round(num*100.0) / 100.0;
System.out.println("numByM="+ numByM);

commons-math3

  • maven 依赖
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-math3</artifactId>
    <version>3.6.1</version>
</dependency>
  • 代码
double num = 3333.445555;
// commons-math3
double numByM3 = Precision.round(num, 2);
System.out.println("numByM3="+ numByM3);

String#format

double num = 3333.445555;
// String#format
String numByStr = String.format("%.2f", num);
System.out.println("String.format="+ numByStr);
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/143295.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • eclipse配置svn的步骤_如何访问svn地址

    eclipse配置svn的步骤_如何访问svn地址   前提是前面已经配置好http访问svn。接下来,就只需要安装ssl,和配置ssl:   1、SSL安装yuminstallmod_sslopenssl 2、生成证书 cd/etc/pki/tls/privateopensslgenrsa-outmysvn.key1024opensslreq-new-keymysvn.key…

  • 手机浏览器唤起微信实现分享

    手机浏览器唤起微信实现分享

    2021年10月28日
  • 接口测试抓包工具_接口测试请求头里面有哪些内容

    接口测试抓包工具_接口测试请求头里面有哪些内容1、Poster    Poster为Firefox浏览器的一个插件,主要用来模拟发并HTTP请求。随着Chrome浏览器的流行,它也出了chrome版本:ChromePoster  在Fiefox浏览器中的安装非常简单。首先,打开Fiefox浏览器,菜单栏“工具”–> “添加组件”,搜索“poster”,在搜索例表中点击“安装”,然后重启浏览器即可。  打开方法:菜

  • 六、策略模式—旅行的交通工具 #和设计模式一起旅行#[通俗易懂]

    兵无常势,水无常形,能因敌变化而取胜者,谓之神! ——《孙子兵法》故事背景旅行开始,我和设计模式mm要去的目的地很多,去往不同目的地可以选择的交通工具也是多样的,从北京到上海,我们可以选择自驾游、乘坐飞机、高铁,甚至是骑单车等等方式!每一种交通工具到达目的的时间也不同,假如从北京到上海,乘坐飞机两个小时,高铁五个小时,自驾游3天(3*24小时),每一种交通费也不一样!假…

  • Solr集成Tomcat

    Solr集成Tomcat

  • SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

    SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解固态硬盘概念固态驱动器(SolidStateDrive),俗称固态硬盘,固态硬盘是用固态电子存储芯片阵列而制成的硬盘,因为台湾英语里把固体电容称之为Solid而得名。SSD由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致。被广泛应用于军事、车载、工控、视频监控、网络监控、网…

发表回复

您的电子邮箱地址不会被公开。

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