欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

除数可以为零吗?java里面的Infinity Infinity 除数为0

程序员文章站 2024-01-06 21:59:28
...

今天遇到一个超级诡异的事情,直接上代码

public static void main(String[] args) {
		System.out.println(1/0);
	}

 result:java.lang.ArithmeticException: / by zero

是个人都知道的除数不能为0

public static void main(String[] args) {
		System.out.println((1.0/0));
	}

 result:Infinity

无穷大,也没有问题啊

 

但是

public static void main(String[] args) {
		System.out.println((int)(1.0/0));
	}

 result:2147483647

似曾相识

public static void main(String[] args) {
		System.out.println((int)(-1.0/0));
	}

 result:-2147483648

明白了int的最大值

但是

public static void main(String[] args) {

System.out.println((float)(-1.0/0));

}

reslut:-Infinity

 

 

网友分享的代码

double i = 1.0 / 0;                  
System.out.println(i);             //Infinity  
System.out.println(i + 1);         //Infinity  
System.out.println(i == i + 1);    //true