资源简介
一个做得相当不错的扫雷,和大家分享一下!
代码片段和文件信息
package com.kerence.mine.data_structure;
/**
* 雷块类的属性和操作
* @download:http://www.codefans.net
* @author Kerence
*
*/
public class Mine {
/**
* 该雷块所在的列
*/
private int column;
/**
* 标记该雷块是否被挖
*/
private boolean isDigged = false;
/**
* 该雷块是否被置旗
*/
private boolean isFlagged = false;
/**
* 该雷块是否是雷
*/
private boolean isMine = false;
/**
* 该雷块周围的雷数
*/
private int mineCountAround = 0;
/**
* 该雷块所在的行
*/
private int row;
/**
* 该雷块是否被自动挖开过。
*/
private boolean isAutoDigged = false;
/**
* 是否被标记
*/
private boolean isMarked = false;
/**
* 功能:返回这个雷块是否被标记
*
* @return true表示被标记 false表示未被标记
*/
public boolean isMarked() {
return isMarked;
}
/**
* 设置该雷块被标记
*
* @param isMarked 为true或者false
*/
public void setMarked(boolean isMarked) {
this.isMarked = isMarked;
}
/**
* row代表雷块所在行,column代表所在类
*
*/
public Mine(int row int column) {
super();
this.row = row;
this.column = column;
}
/**
* 是否被自动挖开
*
* @return true表示被自动挖开 false表示未被自动挖开
*/
public boolean isAutoDigged() {
return isAutoDigged;
}
/**
* 设置是否被自动挖开
*
* @param isAutoDigged
* true表示被自动挖开 false表示未被自动挖开
*/
public void setAutoDigged(boolean isAutoDigged) {
this.isAutoDigged = isAutoDigged;
}
/**
* 重写了hashCode 标度值是prime加上行数和列数之和 若雷块的行数和列数相同则它们的hashCode是相同的。
*/
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + column;
result = prime * result + row;
return result;
}
/**
* 比较两个雷块相等的条件是它们所在的行数和列数完全相同
*/
@Override
public boolean equals(object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Mine other = (Mine) obj;
if (column != other.column)
return false;
if (row != other.row)
return false;
return true;
}
/**
* 返回这个雷所在的列
*
* @return the column
*/
public int getColumn() {
return column;
}
/**
* 得到周围的8个雷块中是地雷雷块的数量
*
* @return 周围的8个雷块中是地雷雷块的数量
*/
public int getMineCountAround() {
return mineCountAround;
}
/**
* 得到雷块所在的行
*
* @return 雷块所在的行号
*/
public int getRow() {
return row;
}
/**
* 返回雷块是否被挖过,
*
* @return 雷块是否被控迅
*/
public boolean isDigged() {
return isDigged;
}
/**
* 返回是否被标记旗
*
* @return 是否被标记旗
*/
public boolean isFlagged() {
return isFlagged;
}
/**
* 返回是否是雷
*
* @return 是否是雷
*/
public boolean isMine() {
return isMine;
}
/**
* 设置雷块的列号
*
* @param column
* the column to set
*/
public void setColumn(int column) {
this.column = column;
}
/**
* 设置雷块被挖过
*
*/
public void setDigged() {
this.isDigged = true;
}
/**
* 设置未被挖过
*/
public void setUnDigged() {
this.isDigged = false;
}
/**
* 设置是
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 311 2011-08-17 16:46 扫雷\.classpath
文件 382 2011-08-16 08:36 扫雷\.project
文件 629 2012-06-09 00:17 扫雷\.settings\org.eclipse.jdt.core.prefs
文件 3108 2012-06-15 23:27 扫雷\bin\com\kerence\mine\data_structure\Mine.class
文件 10843 2012-06-15 23:27 扫雷\bin\com\kerence\mine\data_structure\MineMatrix.class
文件 387 2012-06-15 23:27 扫雷\bin\com\kerence\mine\exceptions\LEDException.class
文件 979 2012-06-15 23:27 扫雷\bin\com\kerence\mine\main\Main.class
文件 854 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\JCopyRightDialog$1.class
文件 2429 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\JCopyRightDialog.class
文件 917 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\JEnterNameDialog$1.class
文件 918 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\JEnterNameDialog$2.class
文件 3800 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\JEnterNameDialog.class
文件 824 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\JRankDialog$1.class
文件 3746 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\JRankDialog.class
文件 1039 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\SelfDefinedGameModeDialog$1.class
文件 1492 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\SelfDefinedGameModeDialog$2.class
文件 6856 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\dialog\SelfDefinedGameModeDialog.class
文件 2288 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\JLED.class
文件 2223 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\JMineBlock.class
文件 5145 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\JMineMatrixPanel$BlockMouseListener.class
文件 9816 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\JMineMatrixPanel.class
文件 6142 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\JMineSweeperfr
文件 2174 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\JStatusPanel$ex
文件 4989 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\JStatusPanel.class
文件 2860 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\menu\JGameMenu.class
文件 787 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\menu\JHelpMenu.class
文件 3871 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mineGUI\menu\JMineMenuBar.class
文件 682 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mine_model\Strategy\AdvancedLevel.class
文件 694 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mine_model\Strategy\IntermediateLevel.class
文件 228 2012-06-15 23:27 扫雷\bin\com\kerence\mine\mine_model\Strategy\MineMatrixSettable.class
............此处省略352个文件信息
相关资源
- JAVA 网络聊天室代码
- java通讯录+sql2008
- mysql+java图书馆管理系统
- 魔板游戏 拼图游戏 JAVA课程设计
- 操作系统实验java版
- java web接收上传文件服务器端
- 模拟退火Java实现
- 四种语言实现MD5加密(JSJSPJAVAASP及j
- java语言实现求素数的原根
- java万年历的源代码显示农历及节假日
- java 分页源代码
- java swing实现的一个计算器
- JAVA计算器科学型+标准型
- JavaFx开发的经典魔塔
- centos7.4 opencv-341.jar + libopencv_java341.s
- java图像用户界面实现的通讯录程序
- Java EE期末考试试题
- Java新闻发布系统源代码
- java的ftp客户端实验报告,有代码
- Java万年历(代码及运行结果)
- 仿QQ登陆界面java程序设计
- 简易网上支付系统,基于jsp的实现,
- 带权图的多种算法有向图,无向图,
- net.mindview.util.*
- 找出一个二维数组的鞍点,即该位置
- Java实现密钥分配RSA+DES混合加密
- Java画面精美的简易聊天室
- JAVA绘制函数图像工具
- java打砖块
- 图书管理系统数据库课程设计java
评论
共有 条评论