我试图断言我的双重是NaN.
这是一段代码:
这是一段代码:
private Double calculateIt(String input){...} assertEquals(Double.NaN,calculateIt("input text"));
代码不编译,Double.NaN定义为原始
public static final double NaN = 0.0d / 0.0;
为了使断言工作,我用Na对象包装NaN.
assertEquals(new Double(Double.NaN),calculateIt("input text"));
有没有更短的方法来做到这一点?
解决方法
你可以使用:
boolean isNan = Double.isNaN(calculateIt("input text")); assertTrue(isNan);
Double.NaN值无法与==(Double.NaN == Double.NaN将返回false)进行比较,因为NaN被视为特殊值.
更多信息: