当前位置:首页 > Java技术 > BigDecimal 简介

BigDecimal 简介

2022年09月16日 08:09:01Java技术4

为什么要使用BigDecimal?

BigDecimal 简介 _ JavaClub全栈架构师技术笔记

你认为你看错了,但结果却是是这样的。问题在哪里呢?原因在于我们的计算机是二进制的。浮点数没有办法是用二进制进行精确表示。我们的CPU表示浮点数由两个部分组成:指数和尾数,这样的表示方法一般都会失去一定的精确度,有些浮点数运算也会产生一定的误差。如:2.4的二进制表示并非就是精确的2.4。反而最为接近的二进制表示是 2.3999999999999999。浮点数的值实际上是由一个特定的数学公式计算得到的。

其实java的float只能用来进行科学计算或工程计算,在大多数的商业计算中,一般采用java.math.BigDecimal类来进行精确计算。

在使用BigDecimal类来进行计算的时候,主要分为以下步骤:

1、用float或者double变量构建BigDecimal对象。

2、通过调用BigDecimal的加,减,乘,除等相应的方法进行算术运算。

3、把BigDecimal对象转换成float,double,int等类型。

BigDecimal常用计算函数

add: 加法。

subtract:减法。

multiply:乘法。

divide:除法。

进行相应的计算后,需要将BigDecimal转为基本数据类型,可以使用BigDecimal类的floatValue(),doubleValue()方法。




作者:yx1166
来源链接:https://blog.csdn.net/yx1166/article/details/80274513

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/41759.html

标签: BigDecimal
分享给朋友:

“BigDecimal 简介” 的相关文章

Java中,String类型转换BigDecimal类型

public static void main(String[] args) {               String str="1.2034";       &nb...

Java 使用BigDecimal进行高精度加减乘除

有时候我们计算金钱或者其他一些计算的时候需要高精度的计算加减乘除,可以使用BigDecimal 加: BigDecimal num1 = new BigDecimal("100.569"); BigDecimal num2 = new Big...

[转]BigDecimal使用(整理)

原文地址:https://www.jianshu.com/p/2947868d76eb 应用场景 大多数的商业计算中,一般采用java.math.BigDecimal类来进行精确计算。比如:货币 使用 1、构建BigDecima...

【java提高】(19)---BigDecimal详解和精度问题

【java提高】(19)---BigDecimal详解和精度问题

BigDecimal详解和精度问题 一、背景 在实际开发中,对于 不需要任何准确计算精度的属性可以直接使用float或double,但是如果需要精确计算结果,则必须使用BigDecimal,例如价格、质量。 为什么这么说,主要有两点...

Java BigDecimal 的舍入模式(RoundingMode)详解

  BigDecimal 有 8 种 RoundingMode(舍入模式),分别总结如下。 一、RoundingMode 详解 ROUND_UP 进位制:不管保留数字后面是大是小 (0 除外) 都会进 1。结果会向原点的反方向对齐,正...

Java BigDecimal详解

原文地址:http://blog.csdn.net/jackiehff/article/details/8582449#comments 1.引言         借用《...

关于BigDecimal与Double

关于BigDecimal与Double

BigDecimal与double 前几天,系统处理double类型的加减法,出现问题。 请看题: 示例1 问, 结果是多少? 0.01? No! 结果是0.00999999999999999...

BigDecimal的运算 计算 加减乘除

BigDecimal的运算 计算 加减乘除 加法: add()函数  减法: subtract()函数  乘法: multiply()函数  除法: divide()函数  绝对值: abs()函数 初始化数值: // 第...

BigDecimal

import java.math.BigDecimal; import java.math.RoundingMode; public class BigDecimalTest { public static void main(String[] args) {...

BigDecimal用法详解

BigDecimal用法详解

一、简介Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。