首页 > 代码库 > 除数为0的几种情况测试
除数为0的几种情况测试
1、int类型,当除数为0时,编译可以通过,但运行时会抛出异常。
static void test1(){ int a = 10; int b = 0; int c = a / b; //java.lang.ArithmeticException: / by zero System.out.println(c); }
2、单精度浮点型,当除数为0时,编译通过,也可运行,运算结果为Infinity(无穷大),当把结果转换为int型时,会显示int所能存储的最大值(2的31次方-1)
static void test2(){ float a = 10.0f; float b = 0.0f; float c = a / b; System.out.println(c);//Infinity System.out.println((int)c);//2147483647 }
3、多精度浮点型,当除数为0时,编译通过,也可运行,运算结果为Infinity(无穷大),当把结果转换为int型时,会显示int所能存储的最大值(2的31次方-1),把结果转换为单精度浮点型时,仍为Infinity(无穷大)
static void test3(){ double a = 10.0d; double b = 0.0d; double c = a / b; System.out.println(c);//Infinity System.out.println((int)c);//2147483647 System.out.println((float)c);//Infinity }
注:本文所述内容基于JDK1.7。
水平有限,上述观点难免有误,仅供参考。欢迎牛们拍砖!
除数为0的几种情况测试
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。