java代码实现扫雷小游戏

最近犯了个大错(在反思中),反思的同时,想着提升一下自己,因为自己在学校上机的时候,无聊喜欢用机房电脑玩扫雷(专业偏向硬件),就想写个扫雷小游戏,屡一下思维逻辑,开始自己的下一阶段。

话不多说,先来看下功能。10x10的地图,用户输入下标x(0-9) , y(0-9),翻开这个位置

(我本人是做 java ee后台开发的,所以这里就没有使用swing窗口美化(因为我也没学过),这里就直接实现里面的算法思维)

扫雷我设置了20个雷,row * col * 0.2;

用户输入后,翻开该处的坐标

没有踩雷,程序继续进行

用户继续输入,此时我输入 x=1,y=1,下标 (1,1)为空地,这时就会翻开一片空地,和数字

这时仍没有踩雷,程序继续

这时我输入 x = 8,y = 1(玩过扫雷的兄弟应该能看出来,此处必定是雷)

可以看到,中雷,游戏结束,同时翻开所有的雷。

那么如何赢得本局游戏呢?

当然,翻开所有的区域,没有中雷,即可赢得,这里我重新设置了一下雷的数量,只为测试一下功能(这里只设置了5个雷)

 

重新跑一下程序,当用户输入(0,0)时 

可以看到,游戏取得胜利

 总结一下

  这里有几个地方需要注意的

  首先第一点就是,初始化雷的位置(随机产生),使用for循环,循环10次(雷的数量),产生10个雷,但这里很有可能就是,你随机产生的地方  他已经存在雷了,这个时候应该怎么办呢? emmmmm,这里我选择 i - - ;让他再循环一次

第二点呢,就是在雷的周围会显示数字,以雷为中心的九宫格,但若是雷在边界上,这点我们应该考虑上

还有一点,就是点击到空地的时候,我们应该翻开一大片 空地,直到出现数字(出现的第一个数字也应该翻开)。这里我选择,用户输入 x,y坐标,若为空地,使用方法进行迭代一次

再说一下定义的实体类(注释很清楚,这里我就不一一说明了哈)

 

 总的来说呢。。。这个扫雷小游戏呢,,,花了我大概一下午时间(可能是我太菜了)

逻辑思维还是需要提高的,也算是巩固一下自己吧

最近呢,还有接近10天就要期末考试了,还有三本天书没看,书上的符号我都不认识。。。

果然数学的 尽头,,就是没有数字。。。。

还得继续努力,有句话叫做,万一路的尽头,是你呢,。。加油吧,先把期末过了,希望半年后,我再来看,会 感觉像 1 + 1 吧

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值