打印多少行包含匹配A B = C的连续元素



我正在尝试打印多少行包含子阵列(a,b,c(满足a + b = c

int [][] matrix = {
            {0,**5,2,7**,0,0},
            {6,0,2, 1,-5,5},
            {8,5,**1,1,2**,-2},
            {3,-1,-5,-3,-4,-2}
    };

这是所讨论的矩阵,它只有两个总和,因此我的程序应该打印2,但是我以某种方式错过了一些东西,该程序只能打印包含数字总和的行,无关紧要,无关紧要它们在行上<<<<<</p>

int [][] matrix = {
            {0,5,2,7,9,0},
            {6,0,2, 1,-5,5},
            {8,5,1,1,2,-2},
            {3,-1,-5,-3,-4,-2}
    };

例如,在这里我们有3个总和,但是我的程序应该打印2个

public static int rowSumsOfThree(int [][] matrix) {
    int count = 0 ;
    if (matrix.length != 0 ) {
        for (int i = 0 ; i < matrix.length ; i++) {
          for (int j = 0 ; j < matrix[0].length-2 ; j++)
            if (matrix[i][j] + matrix[i][j+1] == matrix[i][j+2]) {
              count++;
              break;
            }
    }}
    return count; 
}

这是我到目前为止的代码,我知道这可能是我犯的一些愚蠢的错误,如果您可以提供一些解释,这是非常感谢的,谢谢大家

也许我的英语不好,我需要创建一种方法,将数组中的元素概括为

int [] matrix = {{2,3,4,7,8,3,2},
                       {1,23,4,2,2,}};

给定此矩阵,我需要像这样总结它们,前两个元素=第三,第二和第三元素=第四个元素,依此类推,如果算法检查的检查要比它在检查多少行上返回,则第一个矩阵应该是2,第二矩阵应为1;我希望我解释更好

编辑:使用Break解决了我的问题!它将仅计算每行的总和,即使每行更多,也将计数与行数相同。谢谢您的帮助

正如阿里(Ari(所说,您的返回声明应为:

return count; 

不是

return rowIndex;

这是一个非常简单的错误,请考虑删除您的问题。