由于某种原因,命令提示符不断询问我输入,但我在第12行(sum + one)= sum上放置一个值。如果你们能帮助我确定它的错误,那就太棒了。
import java.util.Scanner;
public class FunnyAverage {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.print("How many values to read? ");
int top = in.nextInt();
System.out.print("Enter Value: ");
int one = in.nextInt();
int number = 0;
int sum = 0;
(sum + one) = sum;
while (number>top){
while (one % 6 != 0&&one % 17 != 0) {
System.out.print("Enter Value: ");
one = in.nextInt();
number++;
}
}
if (sum/top != 0){
System.out.print("Average: " + sum/top);
}
System.out.print("None Divisible");
}
}
答案 0 :(得分:6)
你的意思是:
sum = sum + one; // or sum += one;
通过命令提示符,我认为你实际上是指编译器(它可以将错误消息写入命令提示符)。错误消息将指出(sum + one)
的结果不是变量。
参见Java语言规范的15.26. Assignment Operators 部分,其中指出:
赋值运算符的第一个操作数的结果必须是变量,否则会发生编译时错误。
答案 1 :(得分:2)
(sum + one) = sum;
这是不可能的。它应为sum = (sum + one);
或sum +=one;