2つの変数を持つ Java for ループ

Rupam Yadav 2023年10月12日
  1. 同じ型の複数の変数を使用する Java for ループ
  2. 異なる型の複数の変数を持つ Java for ループ
2つの変数を持つ Java for ループ

このチュートリアルでは、Java の for ループで複数の変数を使用する方法を説明します。Java for ループの構文に正しく従うことで、これを実現することができます。

同じ型の複数の変数を使用する Java for ループ

ここでは、int 型の for ループ内で 2つの変数を使用しています。最初の ; の前は初期化部分であり、カンマで区切られた複数の変数を初期化することができます。2つ目の ; の前が条件部で、それ以降が操作部です。演算子 &&|| を使って条件を作ることができます。

public class ForLoop {
  public static void main(String[] args) {
    for (int i = 0, j = 10; i < 10 && j > 0; i++, j--) {
      System.out.println("i = " + i + " :: "
          + "j = " + j);
    }
  }
}

出力:

i = 0 :: j = 10
i = 1 :: j = 9
i = 2 :: j = 8
i = 3 :: j = 7
i = 4 :: j = 6
i = 5 :: j = 5
i = 6 :: j = 4
i = 7 :: j = 3
i = 8 :: j = 2
i = 9 :: j = 1

上のコードでは、int と同じ型の変数 ij を宣言しています。i は 0 から始まり 10 までインクリメントされ、j は 10 から始まり 0 までデクリメントされます。

カンマで区切って複数の条件を指定すると、以下のような簡単な例で理解できるエラーが発生するため、正しくありません。

public class ForLoop {
  public static void main(String[] args) {
    for (int i = 0, j = 10; i < 10, j > 0; i++, j--) {
      System.out.println("i = " + i + " :: "
          + "j = " + j);
    }
  }
}

出力:

error: ';' expected
        for (int i = 0, j = 10; i < 10 , j > 0; i++, j--) {
                                      ^
ForLoopSame.java:6: error: illegal start of expression
        for (int i = 0, j = 10; i < 10 , j > 0; i++, j--) {
                                       ^
ForLoopSame.java:6: error: ')' expected
        for (int i = 0, j = 10; i < 10 , j > 0; i++, j--) {
                                        ^
ForLoopSame.java:6: error: illegal start of expression
        for (int i = 0, j = 10; i < 10 , j > 0; i++, j--) {
                                           ^
ForLoopSame.java:6: error: ';' expected
        for (int i = 0, j = 10; i < 10 , j > 0; i++, j--) {
                                            ^
ForLoopSame.java:6: error: ';' expected
        for (int i = 0, j = 10; i < 10 , j > 0; i++, j--) {
                                                   ^
ForLoopSame.java:6: error: ';' expected
        for (int i = 0, j = 10; i < 10 , j > 0; i++, j--) {
                                                        ^
7 errors

異なる型の複数の変数を持つ Java for ループ

この例は少し違います。同じ型の 2つの変数 yz を持ち、これらはループ内で宣言されて初期化されます。もう一方の変数 x はループの外で宣言されて初期化され、後にループの条件部で使用されます。変数を再初期化して型を変更するとエラーになります。

public class ForLoop {
  public static void main(String[] args) {
    int x = 2;
    for (long y = 0, z = 4; x < 10 && y < 10; x++, y++) {
      System.out.println("y: " + y);
    }

    System.out.println("x : " + x);
  }
}

出力:

y: 0 
y: 1 
y: 2 
y: 3 
y: 4 
y: 5 
y: 6 
y: 7 
x : 10
著者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

関連記事 - Java Loop