構文を覚えよう! (6/6)
作成:2011-01-06 09:50
更新:2011-01-06 09:51
更新:2011-01-06 09:51
■条件部分がちょっと複雑な「for」文
もう1つの繰り返し構文は、「for」というものです。これは、whileに比べるとちょっと複雑です。が、実はこっちの構文のほうが圧倒的に広く使われます。
と、これだけ書くと、「なんか猛烈に難しそう」という気がしますが、これはだいたい以下のような形で使うのが基本です。
先ほどwhileで作成したサンプルを、forで書きなおしたものを下にあげておきます。動作は全く同じですが、コードはかなり変わっていますね。余計な変数などが不要となり、ずいぶんとすっきりしたように感じるでしょう。for部分を見てみると、
この「繰り返し回数を示す変数を使ったfor」は、for文のもっとも一般的な使い方といってよいでしょう。とりあえず、この書き方さえわかれば、forは使いこなせるようになりますよ。
for ( 初期化処理 ; 条件 ; 後処理 ){forは、その後の()内に3つの要素をカンマで区切って記述します。これは「繰り返しに入る前に行っておくもの」「繰り返しを行うかどうかチェックするための条件」「繰り返しの処理を実行し終わったところで行う後処理」になります。
……繰り返す処理……
}
と、これだけ書くと、「なんか猛烈に難しそう」という気がしますが、これはだいたい以下のような形で使うのが基本です。
for ( int i = 初期値;i < 終了値;i++){これで、「変数iの値が初期値から繰り返すごとに1増えていき、終了値になったら繰り返しを抜ける」という働きになります。要するに、「繰り返しの回数」を示す専用の変数iを用意し、この値を増やしたり減らしたりしながら繰り返しをしていくわけです。そして変数iの値が用意した条件に合わなくなったら繰り返しを抜けるわけですね。
……繰り返す処理……
}
先ほどwhileで作成したサンプルを、forで書きなおしたものを下にあげておきます。動作は全く同じですが、コードはかなり変わっていますね。余計な変数などが不要となり、ずいぶんとすっきりしたように感じるでしょう。for部分を見てみると、
for(int i = 1;i <= num;i++) {こんな具合になっています。最初に変数iに1を代入し、「i <= num」の条件が成立する間(つまり、iがnumと等しいかそれより小さい間)繰り返しを続けます。そして、繰り返しを行うごとに、「i++」でiの値を1増やしているわけです。(++というのは、変数の値を1増やす専用の演算子です)。
この「繰り返し回数を示す変数を使ったfor」は、for文のもっとも一般的な使い方といってよいでしょう。とりあえず、この書き方さえわかれば、forは使いこなせるようになりますよ。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
public class Sample { public static void main(String[] args) { int num = 5; // 適当に int total = 0; for(int i = 1;i <= num;i++) { total = total + i; System.out.println("*" + i + "までの合計:" + total); } } }
※関連コンテンツ