This method is meant to find any cell that is matching two aligned cells and store them in a temporary matrix. However whenever I run the program, I get an out of bounds error. The matrix is 3x3. How can I make it stores any 3 matching adjacent cells in the tempMatrix.
public void matchMatrix(){
    int[][] tempMatrix = new int[rowsN][columnsM];
    
    for(int i = 0; i < matrixArr.length; i++){
        
        for(int j = 0; j < matrixArr.length; j++){
            
            if((matrixArr[i][j] == matrixArr[i + 1][j] && matrixArr[i][j] == matrixArr[i + 2][j]) || (matrixArr[i][j] == matrixArr[i][j + 1] && matrixArr[i][j] == matrixArr[i][j + 2])){
                tempMatrix[i][j] = matrixArr[i][j];
            }
        
        }
        
    }
    
    for(int i = 0; i < matrixArr.length; i++){
        
        for(int j = 0; j < matrixArr.length; j++){
            
            if(matrixArr[i][j] == tempMatrix[i][j]) System.out.println("[ ] ");
            else{
            System.out.print("[" + matrixArr[i][j] + "] ");
            }
        }
            System.out.println();
    }
        System.out.println();
}
 
    