Javaのループ処理の種類
- for文
- while文
- do while
の3種類が存在する。
それぞれのループの詳細について
for文
public class Abc{
public static void main(String[] args){
for(int i = 0; i < 3; i++)
// iが3より小さい間、実行される処理
}
}
}
for文の構造
for([初期化部]; [制御式]; [更新部])
- 初期化部、制御式、更新部は省略することができる。制御式を省略した場合、判定が"True"になるので、"break"などを使用するなど、無限ループにならないように気をつけなければならない。
- 処理を実行する前に制御式を確認する。そのため、制御式が"False"だと処理が1度も実行されずに終わる。
- 制御式は、必ず"True"または"False"となるようにする必要がある。
while文
使用例
public class Abc{
public static void main(String[] args){
int i = 0;
while(i < 10){
// iが10より小さい間、実行される処理(最低1回は実行される)
i++;
}
}
}
while文の構造
while([制御式]){
//処理
}
-処理の前に制御式をチェックする。(1度も処理をしない場合がある)
- インクリメントやデクリメント等の記述を忘れると、無限ループになりやすい。
- "{}"を省くとwhile文の対象になるのは、whileの次の文のみ(1行とは限らない)になる。
int i = 1;
while(i < 10)
if(i <= 9) { //このif文の処理はすべて実行される
System.out.println("ループ脱出"); //ループ脱出
System.out.println("成功"); //成功
break;
}
while(i == 1)
System.out.println(i + "文目は実行される"); //無限ループ
System.out.println("しかし、2文目であるこれは実行されない");
do while文
public class Abc{
public static void main (String[] args){
int i = 8;
do{
// iが9より小さい間、実行される処理
}while(i < 9);
}
}
do while文の構造
do{
// 処理
}while([制御式]);
- while文とは異なり、処理が終了したタイミングで制御式と比較するため、最低1回は実行される。
- while([制御式])の後に";(セミコロン)"が必要なので忘れないようにする。