对通过Java实现的简易五子棋项目的总结
所用逻辑算法梳理
- 棋盘绘制
- 采用了循环的方式绘制纵向与横向的线来实现了棋盘的构成
super.paint(g);
g.setColor(new Color(0xEED00B));
g.fillRect(0,0,850,850);
g.setColor(Color.BLACK);
for (int i = 0; i <= CLO; i++){
g.drawLine(X,Y+i*SIZE,X+CLO*SIZE,Y+i*SIZE);
g.drawLine(X+i*SIZE,Y,X+i*SIZE,Y+ROW*SIZE);
}
- 设置一个Config接口来存储所需要的固定数据,设置为静态常量
public interface GoBangConfig {
int X = 50;
int Y = 75;
int SIZE = 40;
int ROW = 15;
int CLO = 15;
}
- 黑白交替下棋
- 设置chessFlag标记位,通过在监听器中根据按钮的信息赋予初值,在下棋过程中存储棋子数据时不断赋不同的值来实现交替
int chessFlag = 0;
if(chessFlag == 1) {
g.setColor(Color.BLACK);
g.fillOval (clo*SIZE+X-SIZE/2,row*SIZE+Y-SIZE/2,SIZE,SIZE);
chessArr [row][clo] = 1;
chessPositionArrayList.add(new ChessPosition(row,clo));
chessFlag = 2;