我正在制作一个程序,它将一个类的数组中的值相加。我一直收到关于二元运算符的错误。我的代码是:
public static int sum(Array[] x){
int sum = 0;
for (int i = 0; i < x.length; i++){
sum += x[i];
}
return sum;
}
提前致谢!
答案 0 :(得分:4)
您似乎使用的是Array[]
,operator+
类型(Array
的类型)
x[i]
您可能希望将int[]
作为x
的类型。
public static int sum(int[] x){
// ^^
// note the fixed type of the array
int sum = 0;
for (int i = 0; i < x.length; i++){
sum += x[i];
}
return sum;
}
奖金:为了简化和提高可读性,您可能需要考虑使用for-each loop
public static int sum(int[] x){
int sum = 0;
for (int e : x){
sum += e;
}
return sum;
}
答案 1 :(得分:0)
您的参数是一个类型为Array的数组。 你期望看到一个int“+”一个Array对象?
答案 2 :(得分:0)
您需要使用int []而不是通用类型的Array []。