for文

中級 Java

Jim White

Java Developer

ループ

  • 同じ処理を複数回繰り返す
  • Java で最も一般的: for
    • 反復回数が事前にわかるときに使用

3 本の矢印が円を作る画像

中級 Java

for 文の構文

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

  // 何かを実行

}
  • i: 反復変数
  • int i = 0: i0 で開始
  • i < 5: i5 未満の間続ける
  • i++: 各ループ後に i1 増やす
  • 反復対象: ループするもの
    • 例: Stringarray
中級 Java

for 文の例

for (int i = 0; i < 5; i++) {
  System.out.println("Hello".charAt(i));
}  
H

e
l l o
  • i は反復変数
  • "Hello" は反復対象
中級 Java

配列を for 文で走査

// 配列を走査して各要素を出力
int[] num = {1, 2, 3, 4, 5};

for (int i = 0; i < num.length; i++) {
    System.out.println(num[i]);
}
1
2
3
4
5
中級 Java

ループで配列に加算

// 配列を走査し
// 各要素に i を加算
int[] num = {1, 2, 3, 4, 5};

for (int i = 0; i < num.length; i++) {
    System.out.println("Old: " + num[i]);
    num[i] += i;
    System.out.println("New: " + num[i]);
}
Old: 1
New: 1
Old: 2
New: 3
Old: 3
New: 5
Old: 4
New: 7
Old: 5
New: 9
中級 Java

無限ループ

  • 原因:
    • 反復変数を更新しない
    • 終了条件が誤り
    • ...
  • 無限ループを避ける!
    • フリーズやクラッシュの原因

// i は常に 3 より大きい
for (int i = 3; i > 2; i = i + 1) { 
  System.out.println("Forever...");
}
// i を更新していない
for (int i = 0; i < 10; i = i - 0) {
  System.out.println("And ever...");
中級 Java

break

  • 途中でループを抜けるために使用
  • 推奨される書き方ではないため慎重に
    • 多くは while の方が適切
for (int i = 0; i < 5; i++) {
  System.out.println(i);
  if (i == 1) {
    break; // i が 1 のときにループを終了
  }
}
0
1
中級 Java

まとめ

// for 文の例
// break キーワードを含む
String word = "Hey";

for (int i = 0; i < word.length(); i++){
  System.out.println(word.charAt(i));
  if (i == 2) {
    System.out.println("!");
    break;
  }
  System.out.println("-");
}
  • i: 反復変数
  • word: 反復対象
  • for はあらかじめ回数が決まっているときに使う
    • 0 から word の末尾まで実行
    • ただし break で中断可能
H
-
e
-
y
!
中級 Java

Ayo berlatih!

中級 Java

Preparing Video For Download...