二维数组递归

时间:2015-05-14 01:45:51

标签: recursion multidimensional-array

所以我正在尝试建立一个泡沫破碎机程序。游戏的工作方式是它有一个有多种颜色的棋盘。所有斑点从那个地方(水平和垂直)脱落而不是diaganol和那些你在新斑点附近咀嚼的斑点直到没有斑点

public void setSurroundingSimilarToTrue(int row, int col, int correctColor){
    if(row >= 0 && row < this.myBoard.length && col >= 0 && col < this.myBoard.length)
            if(this.myBoard[row][col].getColorValue() == correctColor){
                this.myBoard[row][col].setStatusTrue();
                //System.out.println(row);
                setSurroundingSimilarToTrue(row - 1, col, correctColor);
                setSurroundingSimilarToTrue(row + 1, col, correctColor);
                setSurroundingSimilarToTrue(row, col - 1, correctColor);
                setSurroundingSimilarToTrue(row, col + 1, correctColor);
            }           
}

这就是我所做的,我看不出什么是错的。

1 个答案:

答案 0 :(得分:0)

您的代码有无限递归。 在进行递归之前,请检查当前row, col位置是否尚未设置为True