定义一个变量是double型的
double d=1E200;
d=d*d;
这样并不会报错,但是却已经超出范围了,我怎么样才可以知道超出范围了?谢谢.
double d=1E200;
d=d*d;
这样并不会报错,但是却已经超出范围了,我怎么样才可以知道超出范围了?谢谢.
解决方案 »
- 为什么在 构造函数中不能定义 private 的数据
- java初学者请教
- 求助!一个小程序
- JTabbedPane的两个问题
- problem occured: Launching A(time of error 2008年。。。) 这是什么错误。。。
- jfreechart做折线图:可不可以改变指点的大小,请回答,谢谢
- 服务端加密数据,客户端解密数据,但总是报出错误:e.getMessage()Input length (with padding) not multiple of 16 bytes
- jni中如何将C中的一个struct返回到java
- wen ti
- 请在Linux下装过JBuilder大侠帮忙~~
- 用java怎么将图片存进Access里啊?
- 高手们能否在下面的每一句后面注释下她的功能???我看的不是很明白?
但是实际他的值是Infinity的
我怎么才能知道已经溢出了,小弟初学很菜,请大侠们帮忙啊
您看看应该能找到解决的方法
import java.lang.Double;
import java.awt.*;
class MyException extends Exception
{
public MyException(String str)
{
super(str);
}
}
public class zl
{ public static void main(String[] a)
{
double d=1E200;
try{
if(d>Math.sqrt(Double.MAX_VALUE))
throw new MyException("计算结果会超出范围!");
else
d=d*d;
}
catch(MyException e)
{
e.printStackTrace();
}
}
}
很多有趣的东西
throw new Exception("楼主你到底想干吗!");
}