Skip to content

Latest commit

 

History

History
118 lines (92 loc) · 3.45 KB

Chapter04.md

File metadata and controls

118 lines (92 loc) · 3.45 KB

4 反復処理

4.1. for文

//for文
for (初期化処理; 繰条件; 繰実行する処理) {
    繰処理;
}
//拡張for文
for(要素型 要素名 : iterableを実装しているオブジェクト){
    繰処理;
}

javaにはfor文と拡張for文があり、それらを使うことで繰り返し処理を実行することができます。

今回は普通のfor文を紹介します。

for(int i = 0 ; i < 10 ; i++ ){
    System.out.print(i);
}
実行結果:
0123456789

初期化処理はループの回数をカウントする為の変数の初期値を設定します。

繰り返す条件にはboolean型を返すような式を書きます。大体比較演算子を使います。この式は繰り返し行う度に評価され、trueを返すまで実行され続けます。サンプルコードではi10未満である限り繰り返し実行し続けるという意味です。

繰り返す度に実行する処理では繰り返しを1度終える度に実行する処理を書きます。javaではここはインクリメント演算子か代入演算子を使う事が多いです。サンプルコードではiが繰り返し実行する度に1ずつ増やされることになります。


4.2. while文

while(条件){
    処理;
}

do{
    処理;
}while(条件);

while文を使うことで、ある条件を満たしている限り、繰り返し処理を行うことができます。条件にはboolean型を返す式を記述します。

while文では繰り返し処理前に指定した条件が満たされているかどうかを判定してから処理を実行しますが、do-while文では1回は必ず処理します。 そして、その処理を実行した後で条件を満たしているかどうかを判定し、その後繰り返し処理を行うことができます。

int i = 0;
while(i < 10){
    System.out.print( i + "," );
    i++;
}
System.out.println();//改行の為
int j = 1;
do{
    System.out.print( j + "," );
    j *= 2;
}while(j < 70);
出力結果:
0,1,2,3,4,5,6,7,8,9,
1,2,4,8,16,32,64,

4.3. breakとcontinue

breakとcontinueは反復処理において使用されるキーワードです。

breakは、ループの実行中に特定の条件が満たされた場合、ループを強制的に終了して、ループを抜けるために使用されます。 continueは、ループの実行中に特定の条件が満たされた場合、その時点での処理をスキップして、次のループに進むために使用されます。 どちらもfor文やwhile文で使います。

int a = 0;
while (true) {
    System.out.print(a);
    a ++;
    if( a > 5 ){
        break;
    }
}
実行結果:
01234

上記のサンプルコードでは変数aが5以上の場合にbreakが呼ばれ、5より大きい場合にループが終了します。 条件部分のtrueが入っているので、while文の中でbreakしない限り無限ループします。

for(int i = 0 ; i < 10 ; i++){
    if(i%2 == 1){
        continue;
    }
    System.out.print(i);
}
実行結果:
02468

上記のサンプルコードでは変数iが2で割り切れない数(奇数)の場合にcontinueが呼ばれ処理がスキップされます。iが2で割り切れない数(奇数)の場合にはSystem.out.println()は実行されません。