I have this Java code:
boolean[][] defaultBoard = {{false, false, false},
{false, false, false},
{false, false, false}};
Board board = new Board(defaultBoard);
Board nextBoard = new Board(defaultBoard);
nextBoard.getBoard()[1][5] = true;
board.printBoard();
printBoard
:
public void printBoard() {
for (boolean row[] : board) {
for (boolean cell : row) {
System.out.print( cell ? "#" : "." );
}
System.out.println();
}
System.out.println();
}
But it returns
...
.#.
...
Which makes me think that nextBoard
and board
have got the same memory address. My question is: How do create a copy of nextBoard
so that when nextBoard
is edited, board
isn't edited as well?