Java for for循环与第二个条件中的相等运算符

Mos*_*him 1 java arrays

我试图以相反的顺序打印一个数组.

这是代码:

import java.util.Scanner;

public class Main {

    public static void main(String []argh) {

        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int[] arr = new int[n];
        for (int i = 0; i < n; i++) {
            arr[i] = in.nextInt();

        }

        for (int j = n-1 ; j == 0; j--) {
            System.out.print(arr[j] + " ");
        }
        in.close();
    }
}
Run Code Online (Sandbox Code Playgroud)

在这段代码什么都没有发生,但是当我在第二个for循环变化的第二个条件从j == 0 到j >=0它的工作.我不明白为什么.在j==0,它不应该减少,j直到它变得相等0?

Era*_*ran 6

for (int j = n-1 ; j == 0; j--)意味着循环将执行只要j等于0.由于j初始化为n-1,所以从不执行循环(假设n!= 1).