【问题标题】:Java Variable expected inside a for loop在 for 循环中预期的 Java 变量
【发布时间】:2021-02-06 18:36:28
【问题描述】:

我在这里很新,对 Java 也很陌生。我正在尝试解决一个投影仪问题,我认为我有一个解决方案,但坚持这个我无法修复的错误。只是为了让您了解我的目标(以防不清楚),这是一个问题: “能被 1 到 20 的所有数整除的最小正数是多少?” 我不想要一个解决方案,而是想要摆脱“for 循环内预期的 Java 变量”的任何帮助。错误将不胜感激。

public class Main {
    public static void main(String[] args) {
        int remainder = 0;
        int remainders[] = new int[20];
        int j = 1;
        int remaindersMax = 0;
        while (true) {
            for (int i = 1; i <= 20; i++) {
                j % i = remainders[i];
                for (int k = 0; k < remainders.length; k++) {
                    if (remaindersMax < remainders[i]) {
                        remaindersMax = remainders[i];
                    }
                }
            }
            if (remaindersMax == 0) {
                break;
            }
            System.out.println(j);
        }
    }
}

【问题讨论】:

  • j % i = remainders[i] 倒退了

标签: java arrays loops for-loop variables


【解决方案1】:
j % i = remainders[i];

是无效的语法。变量赋值的左侧 (LHS) 只能包含变量,不能包含表达式。右手边 (RHS) 可以包含任意复杂的表达式。您想为索引i 处的数组remainders 分配模运算的值。交换 LHS 和 RHS 以使您的程序编译:

remainders[i] = j % i;

【讨论】:

    猜你喜欢
    • 2011-05-28
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多