本文实例为大家分享了java实现扫雷游戏控制台版,供大家参考,具体内容如下
扫雷游戏
a、游戏的分析
在游戏中需要存在对象包含哪些。
格子对象(Grid):
属性:内容(content)、状态(type)
b、工程架构
设计工程包结构
bean:存放实体类
core:游戏核心类(游戏操作)
test:扫雷玩的测试类
c、编写类
Grid(属性:content、type)
Core类–游戏核心类(雷区创建、显示雷区、布雷、踩雷)
Test类–测试类
d、核心类设计
1、格子对象创建方法定义
2、显示雷区方法定义
3、布雷方法定义
随机数工具:
Random r=new Random();
//获得整数类型的随机数
int x=r.nextInt(参数);参数表示随机值范围–>9
4、八个方向对象的方法定义
Point类:java中提供的坐标对象类 x,y
5、设置雷数的方法
通过遍历所有格子对象获取雷数的添加
6、踩雷
递归调用:在一个类的方法中实现当前方法调用自己的操作方式
1)、通过传入一个坐标获取当前坐标位置的格子对象内容,判断内容的类型完成游戏操作
1)、内容为雷 -->游戏结束
2)、内容位数字 -->显示当前格子内容
3)、内容为空白 -->通过当前位置实现空白的辐射操作(递归调用)
7、游戏胜利
1)、方法的返回类型
2)、test类中循环的结构(break)
扫雷实体类
package minersgame.bean;
/**
* 格子实体类
* @author 木叶
*拥有格子的内容和状态属性
*/
public class Grid {
//定义格子的私有属性
private char content;
private boolean type;
public char getContent() {
return content;
}
public void setContent(char content) {
this.content = content;
}
public boolean isType() {
return type;
}
public void setType(boolean type) {
this.type = type;
}
}
核心代码
package miners