Java for 循环在第二个条件中使用相等运算符

标签 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();
    }
}

在这段代码中什么也没发生,但是当我将第二个 for 循环中的第二个条件从 j == 0 更改为 j >=0 时,它起作用了。我不明白为什么。在 j==0 中,不是应该递减 j 直到它等于 0 吗?

最佳答案

for (int j = n-1 ; j == 0; j--) 表示只要 j 等于 就会执行循环>0。由于 j 被初始化为 n-1,因此循环永远不会执行(假设 n != 1)。

关于Java for 循环在第二个条件中使用相等运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48765910/

相关文章:

java - JFreeChart 相对缩放

php - 如何修复php数组格式json错误

javascript - 如何在二维中表示已用空间?

android - 如何从 main.xml 为所有 LinearLayouts 创建一个数组?

javascript - 将多个对象缩减为一个,将值加在一起

java - 快速部署spring应用

java - Maven 不更新 Github 存储库

java - 迭代这些 ArrayList 的更好方法?

java - 如何更新war文件中的xml文件?

python - 将所有非零值放在数组的右边