0

重複の可能性:
例外処理、ログの作成、JAVA でのプログラムの続行

約 10 回の繰り返しで結果を取得する Java でプログラムを設計しています。その後、すべての結果をログ ファイルに書き込む必要があります。例外が発生した場合はテキスト ファイルに書き込む必要があり、次にプログラムは停止してはならず、最後の反復が完了するまで続行する必要があります...つまり、反復のいずれかの部分でエラーが発生した場合、結果内でエラーの名前で言及する必要があり、プログラムはここで停止してはなりません、続行してログファイルを更新する必要があります

例としてこれを参照してください。私のクラスは約 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);
    }
}

編集:配列が小さすぎる場合、printステートメントに値があると例外が発生する可能性があることに気づきました。

2 番目の編集:例外処理は単純なチェックほど効率的ではないif(a[i] == 0)ため、チェックを使用すると、より効率的な方法になります。

于 2012-05-11T08:20:13.653 に答える