"continue"キーワードとは何ですか?また、Javaではどのように動作しますか?


Answers

continuegotoのようなものです。 あなたはbreak精通しbreakますか? 対照的に考えることは簡単です。

  • breakはループを終了します(その下のコードにジャンプします)。

  • continueは、現在の反復のループ内のコードの残りの処理を終了しますが、ループを続行します。

Question

私はこのキーワードを初めて見ました。誰かが私にそれが何かを説明できるかどうか疑問に思っていました。

  • continueキーワードとは何ですか?
  • どのように機能するのですか?
  • それはいつ使われますか?



基本的にJavaでは、continueはステートメントです。 したがって、現在の繰り返しをスキップするためには、continueステートメントがループで通常使用されます。

javaでいつ、どのように使用されるかについては、下記のリンクを参照してください。 それは例で説明している。

http://www.flowerbrackets.com/continue-java-example/

それが役に立てば幸い !!




ループの本体をサブルーチンとして考えるなら、 continueは一種のreturnです。 同じキーワードがCに存在し、同じ目的を果たします。 ここには工夫した例があります:

for(int i=0; i < 10; ++i) {
  if (i % 2 == 0) {
    continue;
  }
  System.out.println(i);
}

奇数だけが出力されます。




既に言及したように、 continueはそのコードをループの最後までスキップします。 次に、 ループの条件に移動し、この条件がまだ成立している場合(またはフラグがある場合は、指定されたループの条件に)、次の繰​​り返しを実行します。

do - whileの場合は、ループの始めではなく、 continue後の下部にある条件に移動するdo - while 、強調表示する必要があります。

これは、多くの人が次のコードが生成するものに正しく答えることができない理由です。

    Random r = new Random();
    Set<Integer> aSet= new HashSet<Integer>();
    int anInt;
    do {
        anInt = r.nextInt(10);
        if (anInt % 2 == 0)
            continue;
        System.out.println(anInt);
    } while (aSet.add(anInt));
    System.out.println(aSet);

*あなたの答えがaSetに100%の奇数しか含まれていない場合...あなたは間違っています!




Javaの "continue"は現在のループの最後に移動します。つまり、コンパイラがループ内で継続していると見なした場合、次の繰り返しに移ります

例:1から10までの奇数を出力するコードです

コンパイラは、次の反復に移動し続けると見えるときはいつでも印刷コードを無視します

for (int i = 0; i < 10; i++) { 
    if (i%2 == 0) continue;    
    System.out.println(i+"");
}





Links