【发布时间】:2016-03-15 20:03:38
【问题描述】:
我一直在尝试 try-catch,但对它的具体工作原理感到困惑。
try // x is array of 10 doubles set to 0
{
for (int a = 0; a < 11; a+= 2)
x[a] = 5;
}
catch(Exception e)
{
System.out.println("error");
}
在这种情况下,可以访问数组中的所有值,但代码在 x[10] 处中断。那么,所有值都设置为 5 了吗?
try // x is array of 10 doubles set to 0
{
for (int a = -1; a < 11; a+= 2)
x[a] = 5;
}
catch(Exception e)
{
System.out.println("error");
}
在这种情况下,它将尝试 x[-1] 并捕获错误。那么,它不会返回并完成循环(x[0], x[1], ... x[9] )吗?那么,所有的值仍然是 0 吗?
try-catch 是这样工作的吗?
任何帮助将不胜感激。
谢谢。
【问题讨论】:
-
简短回答:是的,是的。长答案:docs.oracle.com/javase/tutorial/essential/exceptions
-
你能关闭这个吗?