除数为0的几种情况测试
Posted 一把刀
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了除数为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的几种情况测试的主要内容,如果未能解决你的问题,请参考以下文章
一张图,理顺 Spring Boot应用在启动阶段执行代码的几种方式