意外类型平均值

时间:2012-10-05 10:28:11

标签: java

由于某种原因,命令提示符不断询问我输入,但我在第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");
   }
}

2 个答案:

答案 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;