用java实现扫雷小游戏,不再枯燥学语法(三)

写在开始

上一篇博客的链接为:用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();
    }

总结

数据结构其实是编程思想中最为困难的部分,如何把你想实现的功能转变成为一个数学模型去表达出来?

扫雷中我们如何去定义雷,如何构造整个地图,整个游戏的流程又是什么样的,这些都是我们要去思考的,代码量不大,却是最值得我们反复去思考的。

下一次,我们就去完成我们想要实现的游戏基本功能,让整个游戏可以跑起来!

结语

如果说这篇文章有让你学到一定的知识的话,不妨点个赞和关注,让博主能够看到。如果讲解中有什么错误和疏忽,也劳烦在评论中指出或提问,博主会第一时间进行更新和答复,谢谢!

发布了8 篇原创文章 · 获赞 10 · 访问量 291

猜你喜欢

转载自blog.csdn.net/weixin_44018540/article/details/103999084