首页 > 技术文章 > java中的浮点(float)运算

keanuyaoo 原文

一.  关于浮点运算,需要说明的几点:

1.  在java中,进行浮点运算并不会处理例外情况,所以,即使除数为0,也不会有例外被抛出;

2.  当运算结果是溢出(Infinity)时,结果为Infinity;下溢时,则结果为0;若结果是数学上是未定义的,则结果为NaN(not a number);

3.  所有和NaN有关的运算其结果总是NaN;

4.  由于NaN是无序的,所以,和NaN进行数值比较时,其结果总是false.


二.  例子:

public class floattest {
public static void main(String args[]) {
double num = 1.0E200;
System.out.println(num*num);

double num2 = 1.0E-323;
System.out.println(num2/10.0);

System.out.println(1.0/0.0);
System.out.println(-1.0/0.0);


double numNan = 0.0/0.0;
System.out.println(numNan);

                System.out.println(numNan > 0);

}
}


三.  测试结果:
/*
Infinity
0.0
Infinity
-Infinity
NaN

false
 */

推荐阅读