Minesweeper in Java

Minesweeper is a video game where you are trying to clear a "board" while avoiding the hidden traps. There are individual squares which serve as these traps; all of the other squares are defined by the number of traps adjacent to that square. This means that a non-trap square can have a maximum value of eight (although this is highly unlikely). (Source). Here is an example of minesweeper wit a 2D GUI (Graphical User Interface): http://minesweeperonline.com/

This implementation utilizes 2D arrays but does not include a graphical user interface. For this java code, the "9" represents a trap or bomb while -1 represents a spot on the board which isn't visible. Therefore the original board looks like this:

This version also does not include any method to "flow" and reveal all zeroes adjacent to one another. Therefore, you need to reveal each square one at a time.

Here is the driver class for the above game. This version is very customizable; the user selects the # of traps and the dimensions of the board. Furthermore, this edition does not have an option to replay the game; it automatically shuts down after a win or loss.