Java代码调用isNaN()提示方法未定义的原因是什么?
错误根因
- Java不存在全局的
isNaN()方法,该方法是java.lang.Float、java.lang.Double类提供的静态方法,必须通过类名调用,直接写isNaN()编译器无法找到对应方法定义。 - NaN是浮点类型特有的特殊值,仅会出现在
float、double类型的非法运算场景中,整数类型不存在NaN值,传入整数判断是否为NaN没有实际业务意义。
修正后的代码示例
package nan; public class nan { public static void main(String[] args) { // 校验double类型是否为NaN if (Double.isNaN(0.0 / 0.0)) { System.out.println("true"); } } }
内容的提问来源于stack exchange,提问作者Amaranth
相关产品推荐
相关产品推荐

