public class exdemo1 {
public static void main(String args[]) {
int a = 10, b = 0, ans;
int arr[] = {10, 20, 30};
try {
ans = a / b;
System.out.println("Division" + ans);
System.out.println("4th Element" + arr[3]);
} catch (ArithmeticException ae) ;
{
System.out.println(ae);
}
catch (ArrayindexoutofboundsException ae) {
System.out.println(ae);
}
}
}
问问题
839 次
5 回答
3
现在您的代码格式正确,您可能会注意到;
第一个 catch 块之后的额外内容。
于 2012-08-09T15:01:43.423 回答
2
我不知道你到底是什么意思,但这些是我注意到的问题:
- 您的数组没有第 4 个元素,它有 3 个元素,最后一个元素可以通过
arr[2]
- 你不能除以 0。
catch (ArithmeticException ae) ;
您必须删除;
行尾的,您不需要那里。ArrayindexoutofboundsException
正确的类是ArrayIndexOutOfBoundsException
.
由于 catch 语句,我假设您知道前两个。
修复这些应该使您的程序编译。
于 2012-08-09T15:03:58.977 回答
1
它是 ArrayIndexOutOfBoundsException 而不是 ArrayindexoutofboundsException
于 2012-08-09T15:03:24.253 回答
0
在第一个 . 之后有一个额外的分号catch
。删除它。另外,我不认为ArrayindexoutofboundsException
是一个有效的例外,应该是ArrayIndexOutOfBoundsException
?
于 2012-08-09T15:01:32.410 回答
0
您将两个程序混合在一起,但只会抛出一个异常。你的程序基本上做同样的事情
public static void main(String... args) {
int a = 10, b = 0;
int ans = a / b;
}
这将打印抛出的异常。
于 2012-08-09T15:11:14.090 回答