if文 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
if文は
「もし●●なら、▲▲を実行する」
という選択型の制御文。
「もし勇者の経験値が1000以上なら
レベルアップする」
みたいなイメージ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
|
 |
|
if文の3つの命令
if (もし~なら) |
else if (さもなければ~なら) |
else (それ以外なら) |
必要に応じて組み合わせて使う |
|
|
 |
|
 |
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
if文は、実際には3つの命令を組み合わせて作る。
必要に応じて組み合わせて使う。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
if (もし~なら)はif文を書く時、必須の命令。
条件式の結果によって、処理を分岐できる。
他のif文の命令と組み合わせる場合も、
必ず一番上に来ないとだめ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
処理の流れ
もし条件式がtrueならブロックの中が実行される。
結果がfalseの場合はブロックの中は処理されない。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
if文の書き方
「( )」に条件式を書いて
「{ }」のブロックの中にtrueの時に実行する処理を書く。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
ifにelse ifをつなげると
複数の条件で判定することが出来る。
これは
さもなければ~なら
という意味。
使い方はifと同じで、
条件文がtrueならブロック内の処理が実行される。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
else ifはいくつ書いてもいい。
好きなだけ条件を追加できる。
ただし、先頭に書くことは不可。
必ずifより後に書くこと。
いらない場合は書かなくてもいい。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
 |
|
if文の例(else if)複数条件の場合 |
|
・・・ |
|
|
|
023 |
|
//もしaが 10以上 なら |
|
024 |
|
if(a
>= 10){ |
|
025 |
|
//メッセージを表示 |
|
026 |
|
System.out.println("aの値は"
+ a); |
|
027 |
|
|
|
028 |
|
//もしaが 5以上 なら |
|
029 |
|
}else if(a
>= 5){ |
|
030 |
|
//メッセージを表示 |
|
031 |
|
System.out.println("aの値は"
+ a); |
|
032 |
|
|
|
033 |
|
//もしaが 1以上 なら |
|
034 |
|
}else if(a
>= 1){ |
|
035 |
|
//メッセージを表示 |
|
036 |
|
System.out.println("aの値は"
+ a); |
|
037 |
|
} |
|
・・・ |
|
|
|
|
else ifは複数書いてもいい |
|
サンプルです。実行しても動きません。 |
|
|
 |
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
複数条件を書いた場合は、
上から順番に条件式を判定していって、
最初にtrueになったものだけが実行される。
一つ実行された時点で、それ以下のelse ifや
elseは判定されないし、実行もされない。
つまり、上の条件ほど優先度が高い。
たくさん条件を書いても一個だけしか実行できない。
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
書き方はifと同じ。
ただし、ifや他のelse ifにつなぐ形で書くこと。
(else ifの前についてる「}」括弧は。その前の命令の終わりの括弧。) |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
全部の条件に当てはまらなかった場合の
ためにelseというのもある。
これは、他の場合ならという意味。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
elseは、上のどの条件もtrueにならなかった場合
必ず処理を実行する。
だから条件式もない。最後の受け皿のような役目。
決まりとして、elseは一つのif文に一個だけしか書けない。
もちろん、必要なければ書かなくてもいい。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
書き方は他のと同じ。
ifやelse ifにつなげて書くこと。
注意しなくちゃいけないのは
一番最後に書かないとだめということ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
制御文は、ブロックの中に入れ子にして書ける。
何重にでも入れ子にできる。
if文以外の制御文も同じ。
その場合の処理の流れと変数の有効範囲を押さえること。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
 |
|
 |
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
if文の中にif文を書くことも可能。
この場合「且つ」と同じ意味になる。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
 |
|
|
 |
|
|

|
|
|
 |
|
 |
|
if文のまとめ(処理) |
|
if文の処理の内容 |
条件によって処理を分岐処理できる(選択) |
上の条件ほど先に判定される(優先度が高い) |
実行できるのは最初に条件がtureになった一つだけ |
書く順番(条件判定の順番)によって結果が変わる |
|
|
|
|
 |
|
 |
|
|
 |
|
 |
|
if文のまとめ(命令) |
|
if |
「もしも~なら」実行する命令 |
先頭に一つだけ書ける |
|
else if |
「さもなければ~なら」実行する命令 |
ifやelse
ifにつなげて書く |
何個でもつなげて書ける |
先頭には書けない |
必要なければ書かなくてもいい |
|
else |
「それ以外なら」実行する命令 |
ifやelse
ifにつなげて書く |
必ず最後に書く |
必要なければ書かなくてもいい |
|
|
|
|
|
 |
|
 |
|
|