1

次のコードで未定義のラベルエラーが発生するのはなぜですか?? コードは役に立たないので無視しています...

 loopLabel: 
 for(i=0;;i++)
 {
   { some code;
   }
   { come code;
   }
 }

 if(condition)
 {
     if(condition)
     { some code     }
     else 
     { 
           some code;
           continue loopLabel;
     }
 }
4

2 に答える 2

4

continueループの新しい反復の開始にスキップするために使用されます。ネストされたループがあり、どのループにジャンプするかを指定する場合は、ラベルを使用します。gotoまったく関係のないコードのセクションにジャンプするように使用しようとしていますが、これは許可されていません

合法的な使用法は次のようなものです。

foo:
while(cond1) {
    code;
    while(cond2) {
        if(cond3) {
            continue foo;
        }
    }
}

(分岐ステートメントに関する Java ガイド)

于 2010-04-23T14:10:37.243 に答える
2

あなたはループの外にいるからです。ラベルはループ内でのみ表示されます。

ラベルは、ループを中断して継続するためにのみ使用されます。

于 2010-04-23T14:11:16.733 に答える