小编rul*_*red的帖子

无法复制我的对象并更改值

我在制作要使用的对象的副本并更改该副本的值时遇到问题,而是更改了我的两个对象的值.对象的代码.

public class Board {
    private int[][] board;

    public Board() {
        board = new int[9][9];
    }
    public Board(int[][] layout){
        board = layout;
    }

    public int[][] getBoard(){
        return board;
    }
    public int getBoardValue(int y, int x){
        return board[y][x];
    }
    public void insertValue(int v, int y, int x){
        board[y][x] =v;
    }
}
Run Code Online (Sandbox Code Playgroud)

以及我一直试图开始工作的函数的代码

public Board copy(Board b) {
    Node node = new Node(b);
    int[][] layout = node.getBoard().getBoard();
    Board temp = new Board(layout);
    temp.insertValue(1,4,5);
    return temp;
}
Run Code Online (Sandbox Code Playgroud)

因此,当我尝试在新对象中插入值1时,旧对象仍会更改.

java object

6
推荐指数
1
解决办法
84
查看次数

标签 统计

java ×1

object ×1