我开始学习Java编程语言并尝试解决给定的任务
我正在尝试完成方法来计算2d数组中的出现次数并输出结果为1d
public static int[] histogram(int[][] a, int high) {
// Please write your code after this line
// init new array
int numOfRows = a.length;
int numOfCols = a[0].length;
int[] retVal = {};
//main loop
for (int o = 0; o < high; o++){
//System.out.println(o);
// go trough rows
for(int row = 0; row < numOfRows; row++ ){
// check for colum values
int count = 0;
for(int col = 0; col < numOfCols; col++ ){
if(a[row][col] = o ){
count++;
}
}
retVal[o] = count; // Fixed typo
}
}
return retVal;
}
这是我的方法
我正在使用BlueJ IDE进行编译,当我编译时我得到错误 此行的“不兼容类型”
if(a [row] [col] = o)
我不知道为什么我会收到错误,在我的意见中[row] [col]是int类型? 而o也是int类型。
由于
答案 0 :(得分:1)
var array =[[1,2,3,4],
[2,3,4,5],
[6,5,4,3],
[4,3,2,1]];
var sum = 0;
array.forEach(a => a.forEach(b => sum+=b));
document.write(sum);
使用==运算符来检查相等性,所以最后它应该是
if(a[row][col] = o )
答案 1 :(得分:0)
if(a[row][col] = o ) // Assignment Operator
应该是
if(a[row][col] == o ) // Equality evaluator