java - Java中的浮点数据类型精度
问题描述
当存储为单精度浮点数时,数字 0.1 的值为 0.100000001490116119384765625(来源:https ://www.h-schmidt.net/FloatConverter/IEEE754.html ),但它在 Java 中打印为 0.1。我认为这是因为 Java 将浮点数的小数位数限制为七位。如何增加显示的小数位数?
解决方案
float x = 0.1f;
System.out.printf("%.17f", x);
0.10000000149011612
推荐阅读
- python - .ipynb Notebook 超过 5 MB 无法在 Jupyter Notebook python 上打开
- go - 在 Golang 中创建 bool 类型切片时出错?
- c# - FileHelpers.ConvertException 使用格式 dd/MM/yy HH:mm
- pine-script - 在 pinescript 的入口蜡烛高点设置止损
- c++ - 为什么释放空间的价值变化如此之快?
- android - Flutter: Open Drawer from a custom widget
- java - 查找Java接口中所有未实现的方法
- javascript - Firebase 中的自定义事件跟踪
- networking - how to create gcp projects without default network using gcloud sdk
- docker - 通过将在同一容器内执行的脚本取消设置 docker 容器内的 ENV 变量