小谢娱乐哦引来广大网友狂点赞,直呼炸天,程序员用Java实现扫雷小游戏
扫雷游戏想必大家都玩过 , 但有没有想过自己开发呢?Java开发过许多小游戏 , 其中扫雷给小白来练手非常适合不过了 。
话不多说 , 首先展示一下游戏界面:
文章图片
实现过程如下:
【小谢娱乐哦引来广大网友狂点赞,直呼炸天,程序员用Java实现扫雷小游戏】首先设计一个二维数组 , 用于存放雷和周围八个格子雷的个数 , 再定义两个一维数组分别存放雷的X和Y坐标 , 布雷 , 记录周围八个格子雷的个数 。
我使用的是EditPlus(新建Java项目Boom , 新建package:boom , 新建Class:Block)
代码:
文章图片
文章图片
建立一个顶层容器JFrame , 上面添加一个JPanel——JpMain,使用BorderLayout布局North为重新开始按钮 , Center为雷区(新建一个对象 , 把雷区进行了封装) , South为选择难度区域(任然使用一个JPanel , 上面添加JRadioButton单选器) , 顶层容器代码:
(在Boom项目下新建Class , 命名为SuperJpanel 。 )
代码
文章图片
文章图片
文章图片
创建一个对象——雷区对象的初始化 , 整个雷区使用一个JPanel包含 , 这个JPanel使用GridLayout布局方式 , 雷区有多少个格子就添加多少个JPanel , 使用卡片布局方式 , 每个JPanel中有两个卡片 , 第一个卡片为按钮 , 第二张卡片为JLabel——用于显示雷 , 周围雷的个数 。
(新建Class命名为CenterJpanel)
PS:将遍历周围八个数组封装成方法 , 再递归调用 , 最后发现因为递归层次太多极其容易卡死 , 所以不得不另想办法 , 最后想到了使用队列 , 把每个0的点放入队列 , 直到判断到不为0的地方 。
代码:
文章图片
文章图片
文章图片
文章图片
文章图片
新建Class——BoomMain勾选产生主函数
主函数 , 初始化一个SuperJpanel对象
代码:
文章图片
- 军军说娱乐MP3被手机淘汰了?其实它们比你想象中,更受人欢迎
- 娱乐大爆料康崇利:2020年5月十大金股及市场展望
- 娱乐有料说一起来看看吧!,别让你的“房”“车”梦因”它“而破灭
- 娱乐大力酱该不该收费?,丰巢超时收费被拒:求网友评论
- 资深娱乐家91!华人运通简编,低配山寨版FF
- 娱乐中的趣闻还在为生存所困扰吗?试试这些道具!,我的世界:星际探险新模式
- 娱乐中的趣闻“小黄鸭”爱吃草,谁站在了顶端,我的世界:星际探险中的食物链
- 文石娱乐就是欺负人,ETC为何又惹众怒?车主:这两个问题不解决
- 便鹏娱乐梅拉尼娅保持沉默,作为第四位被迫应对丈夫被弹劾威胁的第一夫人
- 娱乐星闻精选LV老板新冠疫情期损失300亿美元?Gucci宣布取消2021度假系列大秀