条件分岐と繰り返し
制御構造
①順次
②分岐
③繰り返し
プログラムを制御構造にするには制御構文を使う
if文(もし〜ならば)
分岐を行うために使う制御構文
if(条件式){
条件式が「はい」の時の処理
}else{
条件式が「いいえ」の時の処理
}
条件式は必ずboolean型になる
while文(前判定)
繰り返しを行うために使う制御構文
while(条件式){
条件式が「はい」の時に繰り返す処理
}
繰り返す処理は何行でも書くことができる
条件式は必ずboolean型になる
「はい」の間処理を繰り返す
ブロック
{ }で囲まれた処理のこと
スコープ
変数の使える範囲のこと
{ }外はスコープ外となりエラーとなってしまう
◉スコープの外でも使えるようにしたい場合は・・・
{ }の外で宣言をする
条件式
関係演算子
データを比較する
== 等しいか判定
!= 異なるか判定
> 左辺が右辺より大きいか判定
< 左辺が右辺より小さいか判定
>= 左辺が右辺より大きいまたは等しいか判定
<= 左辺が右辺より小さいまたは等しいか判定
※気をつけること
1 等しいか判定するときは「=」ではない
※=は代入演算子
2 2文字で出来ている演算子は間にスペースを入れたり、順序を
入れ替えたりしてはいけない
3 文字列を比較することはできない
String型を比較する時はequalsというものを使う
論理演算子
複数の条件を組み合わせる時に使う
&& 〜かつ〜(and)
|| 〜または〜(or)
! 〜でない(否定)
3種類のif文
1 ifーelse文
2 ifのみ構文
条件式がfalseの場合は処理がない時
3 ifーelse ifーelse構文
条件式がfalseの場合、さらに別の処理で判定したい時
※ifーelse文の注意点
プログラムは上から下へ動くので順序が大事
(大きいものから基本書いていく)
switch文
3つ以上に分岐する場合に使う
switch(条件式){
case 値1:(条件値==値1の時)
処理;
break;
case 値2:(条件値==値2の時)
処理;
break;
・
・
・
default:(どれにも当てはまらない時)
処理;
break;
}
※switch文の注意点
1 条件値のデータ型
byte、short、int、char、String しか使えない
×少数型、long
2 caseラベル
caseの右にはリテラルか定数しか書けない
×変数
その右には「:」(コロン)をつける
×「;」(セミコロン)ではない
3 大小の比較は不可
判定はあくまで「条件値==値n」
(Stringの時は「条件値.equals(値n)」)
break;なしのswitch文
break;がなくてもコンパイルエラーにならない・・・けど
次のcase(またはdefault)の処理も行なってしまうため、注意が必要
(文字を表示しちゃうとか・・・)
break;があるところまで実行してしまう・・・
(でも利用することもできるヨ。)
※この中の優先順位としてはif文が一番!!