0

可能重复:
异常处理、创建日志并在 JAVA 中继续程序

我正在用 JAVA 设计一个程序,它在大约 10 次迭代中捕获结果,之后我必须将所有结果写入日志文件,我需要一个解决方案,如果发生任何异常,那么它应该写入我的文本文件,其次程序不能停止,它必须一直持续到最后一次迭代完成......即如果任何迭代的任何部分发生错误,必须在我的结果中以错误的名称提及,并且程序不能在这里停止,它必须继续更新我的日志文件

仅举个例子:因为我的课程大约有 1800 行,所以不能全部粘贴到这里。

float j,i,t;
int []a={1,2,0,3,4,5};
int []b={6,6,9,3,4,5};
for(int i=0;i<6;i++)
{
   j=2/a[i];
   i=3/b[i];
   t=4/b[i];

 }

所以这里由于数组的值列表中的 0 发生异常,因此停止整个迭代,我希望跳过,如果发生某些异常,则不能破坏循环,它只是省略该异常部分并写在文本上文件。

4

2 回答 2

1

尝试这个:

float j;
int []a={1,2,0,3,4,5};
for(int i=0;i<6;i++)
{
    try{
        j=2/a[i];
    catch(Exception e){ //a more specific exception would be preferable, but I don't know what other exceptions may occur here
        System.out.println("Exception occurred at iteration: "+i);
    }
}

编辑:刚刚意识到,如果数组太小,打印语句中的值也可能导致异常。

第二次编辑:异常处理不如简单的检查有效if(a[i] == 0),因此使用检查将是解决此问题的更有效方法。

于 2012-05-11T08:20:13.653 回答
0

我认为您应该阅读此问题的答案以了解有关异常处理的更多信息。

于 2012-05-11T08:20:48.097 回答