- Test-Driven Java Development(Second Edition)
- Alex Garcia Viktor Farcic
- 146字
- 2021-06-24 18:31:53
Implementation
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) to occupied (X). Keep in mind that we're still not storing who played (X or O).
推薦閱讀
- Flask Web全棧開發實戰
- 零基礎學C++程序設計
- Developing Mobile Web ArcGIS Applications
- Apache Spark 2.x Machine Learning Cookbook
- PHP 7底層設計與源碼實現
- Learning Selenium Testing Tools(Third Edition)
- Learning Apache Mahout Classification
- Learning Zurb Foundation
- 21天學通C++(第5版)
- ASP.NET程序開發范例寶典
- Mastering Apache Storm
- Practical Microservices
- Learning Android Application Testing
- Java 9 with JShell
- Node.js實戰:分布式系統中的后端服務開發