メモっぽいレポート3枚目。
第3章Javaの制御ステートメントの概要
3.1 ifステートメント
ifのステートメントはJavaでは選択ステートメントまたは条件ステートメント
と、呼ばれている。
ifのステートの動作は、値が真か、偽かの2つの動きがあり、
真か偽かを調べるために、「関係演算子」というものがある。
「等しいことを比較する」
i == 10
「対象となる値より未満か超えるかを比較する」
//大きいかどうか
i > 10
//小さいかどうか
i < 4
「対象となる値より等しいまたは以上か以下かを比較する」
//以下か、または等しいか
i <= 10
//以上か、または等しいか
i >= 10
3.2 if-elseステートメント
if-elseのステートメントを使えば
if(i % 2 == 0){
System.out.println("偶数");
}
if(i % 2 != 0){
System.out.println("奇数");
}
と、やっていたことを以下のようにできる。
if(i % 2 == 0){
System.out.println("偶数");
}else{
System.out.println("奇数");
}
3.3 コードのブロック
コードのブロックとは{}
で囲った(グループ化した)ステートメントで、以下のようなもののことを指す。
static{
System.out.println("灼熱")
System.out.println("Black.by")
System.out.println("Naughty")
System.out.println("DigitalTank")
}
コードブロックの中かに書かれているステートメントは必ず実行される。
3.4 forステートメント
Javaには3つループステートメントが存在する。(while ステートメント do-whileステートメント、 for ステートメント)
そのうちの一つであるforステートメントは以下のように書く。
for(int i = 0; i < 0; i+1)
このforステートメントを使うことにより
for(int i = 1; i < 10; i+1)
System.out.println(i);
とすることで1 2 3 4 5 6 7 8 9
のような結果が得られる。
forループの動作は最初にint = 0;
初期化が実行され
i < 0
で条件を満たしているか満たしていないかの評価がされ、
最後にi+1
が実行される。
int = 0;
(初期化)についてだがこれはfor文に入って一回しか実行されない。
3.5 インクリメント演算子とデクリメント演算子
インクリメント演算子とは
i++; ++i;
と、いうように書き、デクリメント演算子は
i--; --i;
と書く。
※代入ステートメントとして使う場合だけなら++i
--i
ともして良い。
また、インクリメント演算子とデクリメント演算子を使うことにより、3.4(forステートメント)であった
for(int i = 0; i < 0; i+1)
のi + 1
の部分をi++
やi--
と置き換えることが可能。
for(int i = 1; i < 10; i++)
for(int i = 1; i < 10; i--)
3.6 バックスラッシュコード
バックスラッシュコードとは¥または\をつけて表すコードのことである
よく使われるバックスラッシュコードとして¥n \n
がある。
これは改行を意味し、
System.out.print("New line");
System.out.println("CarriageReturn \rFGH");
結果:New lineCarriageReturn
のような結果で表示される文字列を
System.out.print("New line \n");
System.out.println("CarriageReturn \rFGH");
結果:New line
CarriageReturn
上記のような形で出力することができる。
バックスラッシュコードにはこのほかにも
¥b \b
¥r \r
¥f \f
¥" \"
¥' \'
¥0 \0
¥¥ \\
¥値(0~7) \値(0~7)
¥値値(0~7)(0~7) \値値(0~7)(0~7)
¥値値値(0~3)(0~7)(0~7) \値値(0~3)(0~7)(0~7)
¥uxxxx(4桁の16進定数) \uxxxx(4桁の16進定数)
上記のように多くの種類がある。
3.7 関係演算子と論理演算子
論理演算子は、論理積・論理和・排他的論理和、否定で判別する。
関係演算子の戻ってくる結果はbooleanで会って論理演算子はbooleanに働きかけるので
下記のようにセットで使われることが多い。
if(i < 3 && i == 1)
論理演算子の種類として下記の様なものがある。
「両方が真である時」(AND)
if((i < 3) & (i / 5))
if(i < 3 && i == 1)
「どちらかが真である時」(OR)
if(i < 3 | i == 1)
if(i < 5 || i <= 6)
「どちらの値も違う時に真となる」
if(i <= 6 ^ i == 1)
「等しい時に真となる」
if(i == 1)
「等しくない時に真となる」
if(i != 1)
「否定・○○でない時に真となる」
java
!a
3.8 三項演算子
if-elseの間にthenが入った if-then-elseというステートメントがある。
書き方は以下の様になる
(mini < max) ? mini : max
この場合 maxよりminiが小さかったらminiが結果として返り、
そうでなければmaxが結果として返ってくる。
第4章:制御ステートメントと演算子
4.1 ifステートメントのネスト
ネストとは入れ子になっている状態を指す。
if(...)
if(...)
if( ...){
if( ...){
}
}
下記の様な状態をif-else-ifラダーという
if(...)hoge;
else(...)hoge;
if(...)hoge;
else(...)hoge;
これは以下の様に変えて書くことができる
if(...)
else if(...)
else if(...)
else if(...)
else(...)
今日はここまでで、4章は次に続く。