程序员用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对象
【程序员用Java实现扫雷小游戏,引来广大网友狂点赞,直呼炸天】代码:

文章图片
推荐阅读
- 美国用“核试验”来恫吓中国“核裁军”,那是赤裸裸的核讹诈
- 颠覆未来战场?美军成功测试新武器,但中国早用来砍树了
- 大乔最适合带什么召唤师技能?闪现最无用,佩戴这个有奇效!
- 这3个星座爱得忠诚,弱水三千只取一瓢,用情至深断绝“暧昧”
- 超美的露肩装穿衣指南,溜肩、宽肩也能穿,不用羡慕别人了
- 弹射刀——美国禁止非军方人士使用的刀具
- 奇怪了!任正非都没用华为手机,凭什么要求董明珠用格力手机?
- 董明珠采访中秀出自用手机:三星Galaxy Fold
- 实力收割,iPhone12砍掉刘海,采用乔布斯时代的造型,真美!
- 用苹果还是安卓,看完你就清楚了
