ja3.for_ver3 - wiki(アットウィキ)って何?

第三回
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文をみんなつかってね☆
反省会
・実際にトレースする
・式が見たい
・公式っぽいのは実演し後でやれば?どうなの
?