grails 如何检查双负零
grails how to check Double negative zero
我用谷歌搜索了答案。他们说使用 Double.compare()。
没用。
Double.compare(-0d, 0d) < 0
这给了我错误。应该是真的。
Math.signum() 不适用于 -0d。文档说它会给我返回-0d。
另一方面,如果我有一个计算值为 -0 的公式,比较会给出不同的答案。
def xyz = -0d
Double.compare(xyz, 0d) < 0 will give me false
def xyz = 0d * -1d
Double.compare(xyz, 0d) < 0 will give me true
这是 Grails 中的错误吗?
为什么您认为比较 -0d
和 0d
不相等?
Double.compare(-0d, 0d) < 0// returns false
原因
Double.compare(-0d, 0d) == 0 //returns true
我用谷歌搜索了答案。他们说使用 Double.compare()。 没用。
Double.compare(-0d, 0d) < 0
这给了我错误。应该是真的。
Math.signum() 不适用于 -0d。文档说它会给我返回-0d。
另一方面,如果我有一个计算值为 -0 的公式,比较会给出不同的答案。
def xyz = -0d
Double.compare(xyz, 0d) < 0 will give me false
def xyz = 0d * -1d
Double.compare(xyz, 0d) < 0 will give me true
这是 Grails 中的错误吗?
为什么您认为比较 -0d
和 0d
不相等?
Double.compare(-0d, 0d) < 0// returns false
原因
Double.compare(-0d, 0d) == 0 //returns true