iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Java中BigDecimal的舍入模式解析(RoundingMode)
  • 949
分享到

Java中BigDecimal的舍入模式解析(RoundingMode)

2024-04-02 19:04:59 949人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录BigDecimal的舍入模式(RoundingMode)BigDecimal的常规用法BigDecimal的舍入模式(RoundingMode) BigDecimal.divi

BigDecimal的舍入模式(RoundingMode)

BigDecimal.divide方法中必须设置roundingMode,不然会报错。

  • ROUND_UP:向正无穷方向对齐(转换为正无穷方向最接近的所需数值)
  • ROUND_DOWN:向负无穷方向对齐
  • ROUND_CEILING:向原点的反方向对齐
  • ROUND_FLOOR:向原点方向对齐
  • ROUND_HALF_UP:“四舍五入”,如果舍弃部分的最高位大于等于 5,向正无穷方向对齐,否则向负无穷方向对齐
  • ROUND_HALF_DOWN:“五舍六入”,如果舍弃部分的最高位大于 5,向正无穷方向对齐,否则向负无穷方向对齐
  • ROUND_HALF_EVEN:“四舍六入五成双”,如果舍弃部分的最高位大于等于六,或等于五并且前一位是奇数,向正无穷方向对齐,否则向负无穷方向对齐
  • ROUND_UNNECESSARY:如果需要舍入,就抛出算术异常

BigDecimal的常规用法

在java项目中一般来bigdecimal来进行 精度较高的金钱 运算 ,以及浮点数的运算。

Bigdecimal a =new Bigdecimal(1);
Bigdecimal b =new Bigdecimal(1);
  • 加法 a.add(b)
  • 减法 a.subtract(b)
  • 乘法 a.multiply(b)
  • 除法 a.divide(b)

在运用中可以进行小数点的格式化 运算。

BigDecimal.setScale()方法用于格式化小数点
setScale(1)表示保留一位小数,默认用四舍五入方式 
setScale(1,BigDecimal.ROUND_DOWN)直接删除多余的小数位,如2.35会变成2.3 
setScale(1,BigDecimal.ROUND_UP)进位处理,2.35变成2.4 
setScale(1,BigDecimal.ROUND_HALF_UP)四舍五入,2.35变成2.4

setScaler(1,BigDecimal.ROUND_HALF_DOWN)四舍五入,2.35变成2.3,如果是5则向下舍
setScaler(1,BigDecimal.ROUND_CEILING)接近正无穷大的舍入
setScaler(1,BigDecimal.ROUND_FLOOR)接近负无穷大的舍入,数字>0和ROUND_UP作用一样,数字<0和ROU

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: Java中BigDecimal的舍入模式解析(RoundingMode)

本文链接: https://www.lsjlt.com/news/151889.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java中BigDecimal的舍入模式解析(RoundingMode)
    目录BigDecimal的舍入模式(RoundingMode)BigDecimal的常规用法BigDecimal的舍入模式(RoundingMode) BigDecimal.divi...
    99+
    2024-04-02
  • Java中BigDecimal的舍入模式怎么使用
    这篇文章主要讲解了“Java中BigDecimal的舍入模式怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java中BigDecimal的舍入模式怎么使用”吧!BigDecimal的...
    99+
    2023-07-02
  • 深入浅析BigDecimal在Java中的作用
    本篇文章给大家分享的是有关深入浅析BigDecimal在Java中的作用 ,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1.引言    ...
    99+
    2023-05-31
    java bigdecimal
  • 深入浅析Java中的Balking模式
    深入浅析Java中的Balking模式?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。当现在不适合这个操作,或是没有必要进行这个操作时就直接放弃这个操作而回去。这个就是Balki...
    99+
    2023-05-31
    java balking ava
  • 深入浅析java设计模式中的代理模式
    这期内容当中小编将会给大家带来有关深入浅析java设计模式中的代理模式,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、什么是代理模式(Porxy)  概念:代理模式就是为其他对象提供一种代理以控制对这个...
    99+
    2023-05-31
    java ava 代理模式
  • Java中BigDecimal的示例分析
    小编给大家分享一下Java中BigDecimal的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!引言  float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值...
    99+
    2023-06-20
  • java中BigDecimal的介绍及使用,BigDecimal格式化,BigDecimal常见问题
    文章目录 一、BigDecimal概述二、BigDecimal常用构造方法三、BigDecimal常用方法四、BigDecimal进阶BigDecimal的八种舍入模式BigDecimal格式化、小数点转换货币格式化与百分比格式化 ...
    99+
    2023-08-18
    java BigDecimal BigDecimal的使用及坑
  • Java中Iterator模式的实例解析
    本篇内容主要讲解“Java中Iterator模式的实例解析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java中Iterator模式的实例解析”吧!  下面我们先简单讨论一个根接口Collec...
    99+
    2023-06-03
  • 解决Java中new BigDecimal()的坑
    目录new BigDecimal()的坑关于BigDecimal用法1.实例 BigDecimal 对象2. BigDecimal 加减乘除3. Scale 属性操作4. compa...
    99+
    2024-04-02
  • 如何深入理解Java设计模式的中介者模式
    这期内容当中小编将会给大家带来有关如何深入理解Java设计模式的中介者模式,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、什么是中介者模式用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地...
    99+
    2023-06-25
  • 深入理解Java设计模式之中介者模式
    目录一、什么是中介者模式二、中介者模式的结构三、中介者模式的优缺点四、中介者模式的使用场景五、中介者模式与发布/订阅模式的异同六、中介者模式的实现结果总结一、什么是中介者模式 用一个...
    99+
    2024-04-02
  • Java中如何解决BigDecimal的坑
    这篇文章将为大家详细讲解有关Java中如何解决BigDecimal的坑,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Java BigDecimal的坑采坑处BigDecimal bd ...
    99+
    2023-06-25
  • Java设计模式之组合模式深入刨析
    目录1.基本介绍2.结构3.组合模式解决的问题4.组合模式解决学校院系展示5.组合模式的注意事项和细节1.基本介绍 1)组合模式(Composite Pattern),又叫部分整体模...
    99+
    2024-04-02
  • Java设计模式之策略模式深入刨析
    目录1.基本介绍2.传统方式3.采用策略模式4.策略模式的注意事项和细节1.基本介绍 1)策略模式(Strategy Pattern)中,定义算法族(策略组),分别封装起来,让他们之...
    99+
    2024-04-02
  • 深入解析Go语言中的单例模式
    单例模式是一种常见的设计模式,它在系统中仅允许创建一个实例来控制对某些资源的访问。在 Go 语言中,实现单例模式有多种方式,本篇文章将带你深入掌握 Go 语言中的单例模式实现。什么是单例模式单例模式指仅允许创建一个对象的设计模式。它通常应用...
    99+
    2023-05-14
    Go 设计模式
  • 深入解析Canvas的渲染模式
    Canvas的renderMode详解,需要具体代码示例 在Unity中,Canvas是实现2D UI最基础和关键的组件。Canvas在渲染过程中有两种不同的模式:Screen Space和World Space。这些渲染模式在...
    99+
    2024-01-17
    Canvas 详解
  • 怎么深入理解Java设计模式中的访问者模式
    怎么深入理解Java设计模式中的访问者模式,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、什么是访问者模式定义:表示一个作用于其对象结构中的各元素的操作,它使你可以在不改变各...
    99+
    2023-06-25
  • java设计模式之单例模式解析
    单例模式是最简单但同时也是很重要的一种设计模式,优点有以下几个方面:当内存占用特别大的类需要频繁地创建销毁时,单例模式可以节省内存和提高性能,例如myBatis里面的sessionFactory当需要对文件做单一读写时,例如同一时间只能同时...
    99+
    2023-05-31
    java 设计模式 单例模式
  • 分析Java中的单例模式
    本篇内容主要讲解“分析Java中的单例模式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“分析Java中的单例模式”吧!WHAT维基百科给出了解释、实现的思路以及应该注意的地方:单例模式,也叫单子...
    99+
    2023-06-25
  • Java代理模式的深入了解
    目录一、静态代理模式1.1、 代理模式的定义:1.2、代理模式的优缺点二、动态代理模式总结一、静态代理模式 1.1、 代理模式的定义: 由于某些原因需要给某对象提供一个代理以控制对该...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作