用java实现扫雷小游戏,不再枯燥学语法(三)
写在开始
任务清单
博主做这个项目给自己列的任务清单如下:
任务一:创建窗口(已完成)
任务二:窗口布局(已完成)
任务三:定义数据结构
任务四:实现游戏的基础功能(布雷,查雷,排雷,判定输赢)
任务五:辅助功能(待开数,已开数,游戏重开,计时器)
代码实现
Game.java
package game; import javax.swing.*; public class Game{ // 实例化对象 Windows windows = new Windows(); // 定义地图大小及数据结构 public static int ROW = 10; public static int COL = 10; public static int[][] data = new int[ROW][COL]; public static JButton[][] buttons = new JButton[ROW][COL]; // 定义地雷的个数 public static int LEICOUNT = 10; // 定义表示地雷的特征数 public static int LEICODE = -1; // 定义状态栏参数 public static int UNOPEN = ROW * COL; public static int OPENED = 0; public static int second = 0; // 创建游戏过程 public Game() { // 调用创建窗口 windows.createWindows(); // 创建顶部状态框 windows.setHeader(); // 添加地雷(尚未实现) function.add(); // 设置按钮 windows.setButtons(); // 启动计时器(尚未实现) timer.start(); } // 主方法函数,启动游戏 public static void main(String[] args) { new Game(); }
总结
数据结构其实是编程思想中最为困难的部分,如何把你想实现的功能转变成为一个数学模型去表达出来?
扫雷中我们如何去定义雷,如何构造整个地图,整个游戏的流程又是什么样的,这些都是我们要去思考的,代码量不大,却是最值得我们反复去思考的。
下一次,我们就去完成我们想要实现的游戏基本功能,让整个游戏可以跑起来!
结语
上一篇:
IDEA上Java项目控制台中文乱码