对象无意中发生了变化

时间:2018-03-08 17:42:24

标签: java object

我在GameBoard上玩游戏(比如连续3次)。

我将游戏板保存在int [2]中,并喜欢定义Move方法。 在这种方法中,输入哪个播放器(1或2),行,列和前一个板(上一个),我们返回一个新板(下一个)。

然而,问题是在运行此方法之后,对象Previous会随之改变,这不是我的意图。有人能帮助我吗?

public class GameBoard {
    public int [] [] board;

    public GameBoard(GameBoard G) {
        this.Board=G.Board;
    }

    public static GameBoard Move(int player,int row, int column, GameBoard Previous) {
        GameBoard Next = new GameBoard(Previous);
        if (player==1) {
        Next.setBoard(row,column,-1); ();}
        if (player==2) {
        Next.setBoard(row,column,1);}
        return Next;
    }
}

0 个答案:

没有答案