30歳、はじめてのプログラミング。

30歳、はじめてのプログラミング。

プログラミング知識0から勉強中☺ごはん/ファッション/女子アイドル/本☺

【#Progate】Java2で学ぶ条件分岐、繰り返し処理等まとめ

Progate Java2で学ぶ内容まとめです。

Java | プログラミングの入門なら基礎から学べるProgate[プロゲート]

f:id:suikasu1:20180115172113p:plain

データ型

boolean …真偽値のデータ型。true(真)、false(偽)の2つのみ。

変数

bool …true(真)、false(偽)の変数。

比較演算子

>= …数学でいうところの≧

<= …数学でいうところの≦

== …数学でいうところの=

※「>、<」は数学と一緒。

論理演算子

&&(&/かつ)

true && true →true

false && true →false

・どちらか一方がfalseであればfalse。 

 

||(or/または)

true || false →true

false || false →false

・どちらか一方がtrueであればtrue。

 

!(not/でない)

小>=大 →false

!(小>=大)→true

・!をつけると、正が誤、誤が正になり逆になる。

条件分岐

if文

特定の状況のときだけある処理を行うこと。一例として、天気が雨(条件)なら、傘をもっていく(処理)。

if(条件式){

処理;

}

例)

if(天気==雨){

System.out.println(傘を持っていく);

}

※条件式がtrueなら実行され、falseなら実行されない(コンソールが空欄になる)。

 

{}(ブロック)

複数(2行以上)の処理をまとめる時に使う。

{はif文と同じ行の文末に、}は改行して一文字目に入力する。;は不要。

 

else(そのほかの)

ifと組み合わせ、「もし〜なら◯◯、そうでなければ△△」という条件分岐ができる。

if(条件式){

処理;

}else{

条件

}

例)

if(天気==晴れ){

System.out.println(公園に行く);

}else{

System.out.println(お買い物に行く);

 

else if(この場合はこうする)

上記 if と else に追加することで、条件を追加した上で、「もし〜なら◯◯、そうではなくてもし××なら△△、どちらでもない場合は□□」という条件分岐ができる。

if → else if → else の順に記述する。

例)

if(天気==晴れ){

System.out.println(公園に行く);

}else if(天気==雨){

System.out.println(家にいる);

}else{

System.out.println(お買い物に行く);

}

※}else{・}else if{ ともに }{ で囲む。

※if・else if・else と条件を並べて、if・else if がどちらもtrueでも、if(一番初めの条件)が実行され、else ifは実行されない。

 

switch文

if文より、条件が多いときに便利。条件の値caseの値と一致するとき、処理が実行されます。

switch (条件の値) {
case 値1:
処理;
break;
case 値2:
処理;
break;
case 値3:
処理;
break;
}

例)「2です」と表示させたい場合

int x = 2;
switch (x) {
case 1:
System.out.println("1です");
break;
case 2:
System.out.println("2です");
break;
case 3:
System.out.println("3です");
break;
}

・break;がないと、合致した後のcaseも実行されてしまうので書き忘れ注意。

・caseの末尾は:(;ではない。)

 

default

どのcaseにも一致しなかったときに実行される処理。if文でいうところのelse。

caseの下に以下のように記載する。

default:
System.out.println(処理);
break;

繰り返し処理

while文(繰り返し処理)

一定の処理を自動で繰り返し行う処理のこと。例えば1~100までの処理を繰り返したい場合、println を100回書かなければならないが、それを自動で処理してくれる。

while(条件){

繰り返す処理;

}

例)1~5までを繰り返したいとき

int i = 1;

while (i  <= 5){

System.out.println (i);

i++;

}

・[i ++;]とは、[i = i+x]のこと。

・[i ++;]を付け忘れると、無限ループになるので書き忘れ注意。

 

for文(繰り返し処理)

while文と同じ繰り返し処理だが、forのあとに「変数の初期化、条件式、変数の更新」の3つを記述できる。

for(変数の初期化;条件式; 変数の更新){

処理;

}

例)

for(int i = 1; i<=5 ; i++){

System.out.println (i);

}

・「変数の更新」にはセミコロン(;)をつけないこと。

 

break(繰り返し処理を終了させる)

繰り返し処理は、条件をfalseにする以外に、breakを使って強制的に終了することができる。

例)

for(int i = 1; i<=5 ; i++){

if (i>3){

break;

}

System.out.println (i);

}

・ifで条件を設定し、任意の箇所で繰り返し処理を終了させる。

・for文、while文等で使用。

 

continue(その週の処理だけをスキップして次の周を実行する)

ifで指定した周の処理だけをスキップして、次の周を実行することができる。

例)

for(int i = 1; i<=10 ; i++){

if (i%3 == 0){

continue;

}

System.out.println (i);

}

→iの値が3の倍数のとき、その周のループを終了し、次のループを実行(3/6/9が出力されない)。

配列

配列

変数のセットのようなもので、変数が1つの値しか扱えないのに対し、配列は複数の値をまとめて入れることができる。

int …数値を要素に持つ配列

String …文字列をを要素に持つ配列

例)

int numbers = {5,12,29};

String names = {"一郎","次郎","三郎"};

の間に、半角スペースは入れない。

 

インデックス番号

配列の要素には、前から順に「0,1,2,3…」と数字が振られている。

上記例でいうと「0:一郎、1:次郎、2:三郎」。

インデックス番号を指定するときは、names[0] とすると、「一郎」と出力される。

 

配列の要素の上書き

names[0]="花子";

とすると、一郎と花子がどちらも出力される。

存在しない要素(上記例でいうとnames[3]以降)には上書きできない。

例)

String names = {"一郎","次郎","三郎"};

names[0]="花子";

System.out.println (names[0]);

→一郎と花子と出力される。

 

配列と繰り返し

配列とfor文を組み合わせ、以下のような処理ができる。

例)「Hello+名前」と出力したい場合…

String names = {"一郎","次郎","三郎"};

for (int i =0; i<3; i++){

System.out.println ("Hello" + names[i]);

}

→i が0,1,2の間、処理が繰り返される。

 

length

配列には、要素の数を数えるlengthという機能が備わっている。

配列.length」のように、ドットでつなげて用いる。

例1)

String names = {"一郎","次郎","三郎"};

System.out.println (names.length);

→3と出力される。

例2)

String names = {"一郎","次郎","三郎"};

for (int i =0; i<names.length; i++){

System.out.println ("Hello" + names[i]);

}

 

拡張for文

for (データ型 変数名:配列名){

繰り返す処理;

}

例)

String names = {"一郎","次郎","三郎"};

for (String name:names){

System.out.println (name);

}

→一郎、次郎、三郎と出力される。

 

以上です。Java1に比べて、量が多く内容もぐっと複雑になっている気がします。

総合課題も難しくて、まだとけていません(;O;)

世界一難しい恋 DVD BOX(通常版)

世界一難しい恋 DVD BOX(通常版)