小谢娱乐哦引来广大网友狂点赞,直呼炸天,程序员用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月十大金股及市场展望
- 娱乐先知道了因为他对复出的热情和他的商业价值!,肖战从不让人失望
- 捌方娱乐他不会再结婚了,已经对阿娇失去耐心和信心,赖弘国好友透露
- 盖饭娱乐官方号章子怡发文“会一直守护”,汪峰母亲节宣布妈妈离世
- 阳阳解读杨幂的水手服, 当看到热巴的后: 不心动都难,杨超越的水手服,
- 娱乐桃心遭到刘信达正式的警告,必须明确关系,谢霆锋王菲姐弟恋6年之后
- 小L谈娱乐郭德纲到底有多少钱?郭麒麟能分到多少钱?数字太大了!
- 经典娱乐话事人评论区都沸腾了起来,内容只有四个字,张艺兴早上突然发博