第5章 繰り返し
この章では Javaの繰り返し処理について説明します。
homepage
# **繰り返し** *** <br> ## **1.whileループ** 指定した条件が満たされている間は何度でもコードのブロックを繰り返します。 <pre><code>while (条件式) { // code block to be executed } </code></pre> <br> 以下の例では、変数(i)が5未満である限り、ループ内のコードは繰り返し実行されます。 #### **例** [JSample5_1.java] <pre><code>package JSample; public class JSample5_1 { public static void main(String[] args) { int i = 0; while (i < 5) { System.out.println(i); i++; } } } </code></pre> #### **実行結果** 0<br> 1<br> 2<br> 3<br> 4 <br><br> ## **2.do/whileループ** このループは、条件が満たされているかどうかをチェックする前にコードブロックを1回実行し、条件が満たされている限りループを繰り返します。 <pre><code>do { // code block to be executed } while (条件式); </pre></code> <br> 以下の例では```do/while```ループを使用しています。条件が偽の場合でも、条件がテストされる前にコードブロックが実行されるため、少なくとも1回はループが実行されます。 #### **例** [JSample5_2.java] <pre><code>package JSample; public class JSample5_2 { public static void main(String[] args) { int i = 0; do { System.out.println(i); i++; }while (i < 5); } } </code></pre> #### **実行結果** 0<br> 1<br> 2<br> 3<br> 4<br> <br><br> ## **3.forループ** このループは、同じ処理を指定した回数だけ繰り返し実行する場合に使います。 <pre><code>for (statement 1; statement 2; statement 3) { // code block to be executed } </code></pre> statement 1:変数の宣言と初期化 statement 2:条件式(ループ処理を続ける条件) statement 3:継続式(ループ処理が1回終わるごとに実行される内容) <br> #### **例** [JSample5_3.java] <pre><code>package JSample; public class JSample5_3 { public static void main(String[] args) { for (int i = 0; i <= 10; i = i + 2) { System.out.println(i); } } } </code></pre> #### **実行結果** 0<br> 2<br> 4<br> 6<br> 8<br> 10 <br><br> ## **4.for-eachループ** forループの少し違った使い方として拡張forループ(for-eachループ)という使い方ができるようになりました。これは配列やコレクションと呼ばれる複数の要素を持っているものから全ての要素に含まれる値を順に取り出して処理するために使われます。 <pre><code>for (type variable : arrayname) { // code block to be executed } </code></pre> <br> #### **例** [JSample5_4.java] <pre><code>package JSample; public class JSample5_4 { public static void main(String[] args) { String[] cars = {"Volvo", "BMW", "Ford", "Mazda"}; for (String i : cars) { System.out.println(i); } } } </code></pre> #### **実行結果** Volvo<br> BMW<br> Ford<br> Mazda <br><br> *** > **練習** >> **問題1**[JEx5_1.java] whileループで、変数i(0~)が6未満であれば、iを出力してください。 <!-- <pre><code> public class JEx5_1 { public static void main(String[] args) { int i = 0; while (i<6) { System.out.println(i); i++; } } } </code></pre>  --> <br> >> **問題2**[JEx5_2.java] forループで、実行結果が`1*2*3...*n`になるような文を作ってください。 ``` 例(入力変数n=10の時): 1!=1 2!=1*2 3!=1*2*3 4!=1*2*3*4 5!=1*2*3*4*5 6!=1*2*3*4*5*6 7!=1*2*3*4*5*6*7 8!=1*2*3*4*5*6*7*8 9!=1*2*3*4*5*6*7*8*9 10!=1*2*3*4*5*6*7*8*9*10 10!=3628800 ```
content
戻る