精确运算为什么不能用double?

主要原因:就是因为double会导致数据不准确,不准确的原因如下所示

高于大小的比特会被自动删除,但是在删除的过程中还需要遵循 IEEE-754 规范,这就是我们理解的删除不应该会让数变小吗?为什么计算机的计算会变大?

如果最后一位是1左移一位继续,循环此过程,而不像int是1也给你删除,这就是变大的原因了。
所以对于需要精确计算的一定要使用bigDecimal,比如设计钱的问题。

相关推荐

  1. ping为什么加http

    2024-04-14 15:54:03       38 阅读
  2. STM32为什么跑Linux?

    2024-04-14 15:54:03       13 阅读
  3. static为什么修饰String类

    2024-04-14 15:54:03       14 阅读
  4. 【pytest】为什么使用__init__

    2024-04-14 15:54:03       9 阅读
  5. Chrome为什么COOKIE

    2024-04-14 15:54:03       12 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-14 15:54:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-14 15:54:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-14 15:54:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-14 15:54:03       18 阅读

热门阅读

  1. Android 蓝牙开发与 12/S 系统适配

    2024-04-14 15:54:03       15 阅读
  2. Axios的简明教程

    2024-04-14 15:54:03       13 阅读
  3. 算法与数据结构 栈队列 (C++)

    2024-04-14 15:54:03       15 阅读
  4. python制造虚拟姓名电话保存到mysql数据库

    2024-04-14 15:54:03       13 阅读
  5. 一体化泵站的生产制造流程怎样

    2024-04-14 15:54:03       14 阅读
  6. 3.15 Python逻辑运算符

    2024-04-14 15:54:03       12 阅读
  7. 基于单片机的天然气报警系统设计

    2024-04-14 15:54:03       14 阅读
  8. 【算法】Cordic算法的原理及matlab/verilog应用

    2024-04-14 15:54:03       14 阅读
  9. 题目:输入3个数a,b,c,按大小顺序输出。

    2024-04-14 15:54:03       13 阅读