是否有适用于进行双精度比较的Java库? 例如:
public static boolean greaterThanOrEqual(double a, double b, double epsilon){
return a - b > -epsilon;
}
每次我开始一个项目,最终都会重新实现这个功能并复制粘贴代码和测试。
值得注意的是,使用第三方JAR包更好的一个例子是IBM建议如下:
“如果您不知道基础测量的规模,使用测试‘abs(a/b - 1) < epsilon’比仅仅比较差异更加稳健。”
我怀疑很少有人会想到这一点,这说明即使是简单的代码也可能不够优秀。