前几天,系统处理double类型的加减法,出现问题。

请看题:

示例1

问, 结果是多少? 0.01?

No! 结果是0.009999999999999998!

为什么会这样呢? 因为float和double都是浮点数, 都有取值范围, 都有精度范围. 浮点数与通常使用的小数不同, 使用中, 往往难以确定. 常见的问题是定义了一个浮点数, 经过一系列的计算, 它本来应该等于某个确定值, 但实际上并不是!double相减会转换成二进制,因double有效位数为 16位这就会出现存储小数位数不够的情况,这种情况下就会出现误差,解决方法就是使用BigDecimal,它的有效长度足够长可存储 小数位数因此可代替double来进行加减乘除, 金额必须是完全精确的计算, 故不能使用double或者float, 而应该采用java.math.BigDecimal.

加减乘除

两个BigDecimal值应该怎样进行加减乘除呢? +, -, *, / 这样写吗? 不!

请看示例:

示例2

加减乘除使用了英文的加减乘除, 即add, substract, multiply和divide

大小比较

两个BigDe

mysql bigdecimal 默认值_BigDecimal与double相关推荐

  1. mysql字段默认值不生效的问题解决(上)

    mysql字段默认值不生效的问题解决(上) 参考文章: (1)mysql字段默认值不生效的问题解决(上) (2)https://www.cnblogs.com/yuhuameng/p/10703931 ...

  2. MySQL 字段默认值该如何设置

    MySQL 字段默认值该如何设置 前言: 在 MySQL 中,我们可以为表字段设置默认值,在表中插入一条新记录时,如果没有为某个字段赋值,系统就会自动为这个字段插入默认值.关于默认值,有些知识还是需要 ...

  3. Mysql 数据库默认值选 ‘‘“ 、Null和Empty String的区别

    Mysql 数据库默认值选 ''" .Null和Empty String的区别 1:空值('')是不占用空间的 2: MySQL中的NULL其实是占用空间的.官方文档说明: "NU ...

  4. mysql datetime 默认值_老大让我整理下公司内部MySQL使用规范,分享给大家

    作者:白程序员的自习室 链接:https://www.studytime.xin/article/mysql-internal-specifications.html 最近涉及数据库相关操作较多,公司 ...

  5. mysql date 默认值_通过Oracle DB了解MySQL

    Oracle数据库是业界的翘楚,各行各业拥有大量的Oracle DB的DBA,本文尝试通过将Oracle与MySQL数据库的架构.安全.模式对象.数据类型及数据存储进行对比,以方便熟悉Oracle数据 ...

  6. python mysql 的默认值_python--MySQL 库,表的详细操作

    一 库操作 数据库命名规则 可以由数字,字母,下划线,@, #, $ 区分大小写 唯一性 不能使用关键字如 create  select 不能单独使用数字 最长128位 # 这些是对上次的补充. 二 ...

  7. mysql int 默认值 为ull_mysql的 约束 数据库设计 数据库 存储 触发器 mysql 权限问题...

    今天的目标: mysql的 约束 数据库设计 数据库 存储 触发器 mysql 权限问题 先讲约束: 要他唯一 不能重复 不能空值 : 什么是 mysql的约束: 对mysql 进行约束 2.2  默 ...

  8. json mysql 字段 默认值_MySQL中的JSON类型

    前言(废话) 昨天抽了点时间在网上搜列了一个开源项目,项目挺完整的,前后台分离还带有微信小程序,我Clone下代码,经过一番倒腾,嘿~还真就跑起来了.在这个过程中,体验了一把VUE项目工程细节,因为之 ...

  9. mysql数据类型默认值_MySQL数据类型 - 数据类型默认值

    数据类型默认值 数据类型规范可以有显式或隐式的默认值. 数据类型规范中的DEFAULT值子句显式指示列的默认值.示例: SERIAL DEFAULT VALUE是一种特殊情况.在整数列的定义中,它是N ...

最新文章

  1. 【线性规划与网络流24题】孤岛营救问题 分层图
  2. 第三篇 - EOS DAWN-V3.0.0 智能合约开发之Hello World
  3. LODOP打印table表格宽度固定-超宽隐藏
  4. flink java旁路输出(Side Output),对原始流进行分流、复制
  5. html英文怎么换成中文的,英文版Win7系统怎么换成中文的
  6. 青蛙跳台阶(C、Python)
  7. **尾座体工艺工装设计尾座体工艺工装设计**
  8. 普通路由器连接光猫一体机的配置教程(以水星MW300R路由器,移动吉比特GS3202光猫一体机为例,可突破专供定制路由限制)
  9. TiDB聚簇表和非聚簇表
  10. Android 方法耗时打印插件
  11. Anaconda安装报错(Failed to create Anaconda menus)
  12. IDL读取ASCII文件
  13. 微信小程序 php 手机授权登录
  14. Struts验证框架与一些技巧
  15. SEO索引量和收录量的关系
  16. 2021总结web渗透测试岗位面试题(个人亲身经历的总结)
  17. 让文字和图片垂直居中对齐
  18. docker roverlay占用磁盘100%
  19. 2012第24周国内Android应用下载排行榜动态
  20. 代码的同源性检测:基于c语言实现的对代码的同源性检测 详细教程

热门文章

  1. E+H音叉液位开关FTL31-AA4M2AAWBJ
  2. html2canvas截取图片不完整,html2canvas关于图片不能一般截取
  3. HDU - 5338 ZZX and Permutations 线段树 + set
  4. CAD二次开发不关闭CAD进行编译调试代码片段
  5. android 实现拍照,Android开发拍照实现
  6. android 相机故障 代码 解决,android – 如何在调用Camera时解决ANR错误?
  7. 如何求方程式各未知数
  8. 中中的背包(01背包,完全背包,二进制优化时间复杂度)
  9. 无序列表,有序列表,自定义列表
  10. JAVA转换器模式 耳机口转Type-C