Java双epsilon

我目前需要一个类型为double的 epsilon(首选是java库中的常量,而不是自己的实现/定义)
据我所见,Double有MIN_VALUE和MAX_VALUE作为静态成员.
为什么没有EPSILON?
什么是epsilon< double>是?
与std :: numeric_limits< double> :: epsilon()?

Epsilon:1与数据类型可表示的大于1的最小值之间的差值.

解决方法

我假定你的意思是在值的错误意义上的epsilon.即 this.

如果是这样,那么在Java中它被称为ULP(最后单位).您可以使用java.lang.Math包和Math.ulp()方法找到它.见javadocs here.

该值不会作为静态成员存储,因为它将根据您所关心的双倍而不同.

编辑:按照OP的定义,现在在这个问题上,值为1.0的双倍的ULP是2.220446049250313E-16表示为双倍. (即Math.ulp(1.0)的返回值))

相关文章

ArrayList简介:ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增...
一、进程与线程 进程:是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程...
本文为博客园作者所写:&#160;一寸HUI,个人博客地址:https://www.cnblogs.com/zsql/ 简单的一个类...
#############java面向对象详解#############1、面向对象基本概念2、类与对象3、类和对象的定义格式4、...
一、什么是异常? 异常就是有异于常态,和正常情况不一样,有错误出错。在java中,阻止当前方法或作用域...
Collection接口 Collection接口 Collection接口 Collection是最基本的集合接口,一个Collection代表一组...