第三回 JAVA ス コ ー ラ ※注意点※ わからなかったら即挙手! これ、Javaスコーラでの常識 (何も言わなくても誰かが察してくれると思うなよっ コミュニケーションが基本ですの!) いってみよう!やってみよう! 「Java最高!」 と 1,000回表示するプログラムを 書いてください!! ソースコードがこんな場合 pulibc Class JavaJunkey{ public static void main(String[] args){ System.out.println(“Java最高!!”); System.out.println(“Java最高!!”); System.out.println(“Java最高!!”); System.out.println(“Java最高!!”); System.out.println(“Java最高!!”); System.out.println(“Java最高!!”); System.out.println(“Java最高!!”); System.out.println(“Java最高!!”); System.out.println(“Java最高!!”); System.out.println(“Java最高!!”); ↑が990回ぐらい続く… こういうふうに書く場合の利点! ・コピペしまくって思考停止ぷろぐらみんぐ☆ ・「Javaが最高」だということが十二分に伝えられる! でも 正直、ソースコード読む側辛くね? それに、 何回コピペしたか覚えてられる? こういう場合 どうする? case1:同じようなことを繰り返し行う! case2:同じようなことを膨大な回数おこなう 書くのめんどくさいよ、ぼすけて>< case3:連番をつかってなにかやりたい! そーゆーときのための便利なもの 繰り返し処理 繰り返し処理ってどんなもの? ↓みたいなやつ。これはfor文といいます。 for(変数宣言,初期化; 条件式; 変数更新){ ※繰り返し行いたい処理 } これが繰り返し処理(for文)だ! public class JavaScuala { public static void main(String args[]){ for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } } } 時間があったら 書いて! for文の構造をみてみよう! for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } 赤部分(変数宣言,初期化):変数iを宣言、初期値とし て0を設定 青部分(条件式):iが1000未満ならtrueを表す比較式 緑部分(変数更新):iを1増加させる for分の動きを見てみよう! 1.for文のブロック内赤色部分で変数iを宣言、0で中身を初期化。 (ただし、これは初回のみ実行) 2.青部分の条件式を見る。これが正しいこと(true)を表していたら, {}で囲まれた内の処理を行う。 もし、正しくなかった(false)場合、for文を抜ける。 3.青部分が正しい事(true)を表した場合、{}内の処理を終えた 後、緑部分で赤部分で宣言した変数を変化させる。 4.手順2に戻る。 for文の処理を追う その1 1.変数iを宣言、0で初期化 for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } 変数iの中身:0 for文の処理を追う その2 2.iは0なのでi<1000は正しい(true) for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } 変数iの中身:0 for文の処理を追う その3 for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } 3.青部分の条件式が正しかったので、{}内部の処理 を実行 変数iの中身:0 for文の処理を追う その4 4.赤部分で宣言した変数iの中身を1増加 for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } 変数iの中身: 0→1 ←更新されたよ! for文の処理を追う その5 5.青部分にもどる。 緑部分でiが1になったので「1<1000」で正しい か調べる。 この場合「」式は正しい(ture) for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } 変数iの中身:1 for文の処理を追う その6 for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } 6.青部分の条件式が正しかったので、{}内部の処理 を実行 変数iの中身:1 for文の処理を追う その7 7.赤部分で宣言した変数iの中身を1増加 for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } 変数iの中身: 1→2 ←更新されたよ! 処理の流れのいめぇじ ここが運命の分かれ目! for文入る! 回るよ(`・ω・´) for( int i=0; i<1000; i++ ){ System.out.println(“Java最高!”); } 青部分の式が正しい(true)場合のルート for文抜ける 青部分の式が正しくない(false)場合のルート ここまでのまとめ ・繰り返し同じ処理を使う場合、for文が使える ・むしろfor文で書いた方が分り易いし、簡潔に書ける! ・for文には 変数宣言、条件式、変数更新、{}内処理 がある -変数宣言:for文で使う変数の宣言。 -条件式:繰り返す条件を書く。正しい場合回る。 -変数更新:条件式で使う変数の値を変化させる。 ・条件式や変数更新をうまく駆使して繰り返し処理を行え! 番外偏:while文 ↓みたいなやつのことをいいます While(「true」か「false」を表す条件式や変数){ ※繰り返し行わせたい処理 } 条件式や変数がtrueを表す場合{}内の処理を行う もの。 for文を簡単にしたようなヤツ。 もうひとつ for文を使うとよい場合がある。 今度は0~10までの 数字を表示したい! 前はこう書いた。 public class JavaJunker { public static void main(String args[]){ for(int i=0;i<10;i++){ System.out.println(“Java最高!”); } } } 今回はこうすればいい public class JavaKazu { public static void main(String args[]){ for(int i=0;i<=10;i++){ System.out.println( i ); } } } 変わった部分は{}内の処理だけです! それでは 実際に 書いてみようず! この先通行止め for文の動きを見てみよう! その3 1.for文に入る 2.変数i=0で宣言,初期化(一度だけ) 3.i=0で、i<1000なので正しい(true) 4.{}内部の処理。 「Java最高!」と表示(1回目) 5.iの中身を1増加 [i=1] 6.i=1で、1<1000なので正しい(true) 7.{}内部の処理。 「Java最高!」と表示(2回目) 8.iの中身を1増加 [i=2] 9.i=2で、2<1000なので正しい(true) 10.{}内部の処理。 「Java最高!」と表示(3回目) ~そして10年後~ The magic number! 2991.iは1000で、1000<1000は正しくない(false) 2992.条件文がfalseだった!ここでfor文を抜ける! 動き方解説! 1.int i=0で変数iを宣言、初期値を0に設定。 2.↑で宣言した変数iの中身が、10000を 超えるまでtrueを表す。 ※ここでtrueを表していたら{}内の処理を行う 3.iの数値を1つ増加させる。 1→2→3 といって、それ以降2と3を交互に行い、 2の式がfalseを表すまで繰り返す。 繰り返し処理ってどんなの?2 1.変数宣言・・・for文中で使う変数の宣言初期化をする。 2.条件式・・・比較演算子(<、>、>=、<=、!=、==) やboolean型の変数をおくことによって、 どこまで処理を繰り返すかを設定する。 3.変数更新・・・変数宣言にて宣言した変数の値を増やしたり 減らしたりする場所。 どうやって繰り返してるの? ・変数宣言で宣言した変数を、変数更新で値を変化 させる。 ・毎回条件式がtrue(正しい)事をあらわしている間、 {}内の処理を繰り返す! ※正しいことを表すモノの例 ・ 5< 10 ・ 9 < 10 ・10 <=10 for文使って書く場合の利点 ・読む側にとって読みやすい ・ソースコードを簡潔に書くことができる! ・なんかカッコ良い! 便利でかっこいいfor文をみんなつかってね☆ 反省会 ・実際にトレースする ・式が見たい ・公式っぽいのは実演し後でやれば?どうなの ?
© Copyright 2025 ExpyDoc