March 2018
Intermediate to advanced
324 pages
8h 30m
English
To implement the last test, we should store the location of the placed pieces in an array. Every time a new piece is placed, we should verify that the place is not occupied, or else throw an exception:
private Character[][] board = { {'\0', '\0', '\0'},
{'\0', '\0', '\0'}, {'\0', '\0', '\0'}};
public void play(int x, int y) {
if (x < 1 || x > 3) {
throw new RuntimeException("X is outside board");
} else if (y < 1 || y > 3) {
throw new RuntimeException("Y is outside board");
}
if (board[x - 1][y - 1] != '\0') {
throw new RuntimeException("Box is occupied");
} else {
board[x - 1][y - 1] = 'X';
}
}
We're checking whether a place that was played is occupied and, if it is not, we're changing the array entry value from empty (\0 ...
Read now
Unlock full access