for循环中的Java增量声明

时间:2018-09-16 12:10:31

标签: java loops for-loop

public class F2E12 {

    public static final int DIM = 5;

    public static void main(String[] args) {
        printMatrix(DIM);

    }

    public static void printMatrix(int n) {
        int i = 0;
        int j = 0;
        for(;i<=n;i++) {
            for(;j<=n;j++) {
                System.out.print(j + " ");
            }
            System.out.print("\n");

        }
    }
}

我想打印一个矩阵,该矩阵将每行的第一个数字加1。 上面的代码应产生:

  1. 0 1 2 3 4 5
  2. 1 0 1 2 3 4
  3. 2 1 0 1 2 3
  4. 3 2 1 0 3 4
  5. 4 3 2 1 0 1
  6. 5 4 3 2 1 0

而是打印。 “ 0 1 2 3 4 5”

2 个答案:

答案 0 :(得分:7)

public static void printMatrix(int n) {
    for (int i = 0; i <= n; i++) {
        for (int j = 0; j <= n; j++) {
            System.out.print(Math.abs(j - i) + " ");
        }
        System.out.print("\n");
    }
}

答案 1 :(得分:4)

您的当前代码无效,因为j的第一个迭代中n命中了i。您可以像这样将j移入循环

// int j = 0;
for (; i <= n; i++) {
    int j = 0;
    for (; j <= n; j++) {

解决此问题。