map.put(Integer.toString(tempRand),Integer.toString(7));//把得到的位置放到map集合里,值为7,表示有雷;
landmintTally++;//计数器加1;
}
}
/**计算雷的分部情况,指一个按钮周围有多少雷;*/
void calculate()
{
int num; //按钮的状态;
int sum=0; //计数器,计算周围有几颗雷;
int leftUp, up, rightUp, left, right, leftDown, down, rightDown; //定义了8个位置
for (int i = 0; i480; i++)
{
leftUp = i-31;
up = i-30;
rightUp =i-29;
left = i-1;
right = i+1;
leftDown = i+29;
down = i+30;
rightDown= i+31;
cardsBtn[i].setBorder(BorderFactory.createBevelBorder(0)); //设置按钮的边框样式;
buttonClick[i] = new slFrame_button_actionAdatper(this,i); //实例化事件类;
cardsBtn[i].addMouseListener(buttonClick[i]);//给当前按钮添加鼠标事件;
num = Integer.parseInt(map.get(Integer.toString(i)).toString());//得到当前按钮的状态;
if (num == 7){
continue;//如果这个按钮的状态为雷,跳到下个按钮;
}
if (i == 0) {//左上角第一颗雷;
num = Integer.parseInt(map.get(Integer.toString(i)).toString());
if ( Integer.parseInt(map.get(Integer.toString(right)).toString())== 7 ) sum++;//如果是雷计数器加1;
if ( Integer.parseInt(map.get(Integer.toString(down)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(rightDown)).toString())== 7 ) sum++;
map.put(Integer.toString(0),Integer.toString(sum)); //把得到的数字放到当前的位置;
sum=0;//计数器清零;
continue;//下个按钮;
}else if (i == 29) {//右上角第一颗雷;
if ( Integer.parseInt(map.get(Integer.toString(left)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(leftDown)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(down)).toString())== 7 ) sum++;
map.put(Integer.toString(i),Integer.toString(sum));
sum=0;
continue;
}else if (i == 450) {//左下角第一颗雷;
if ( Integer.parseInt(map.get(Integer.toString(right)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(up)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(rightUp)).toString())== 7 ) sum++;
map.put(Integer.toString(i),Integer.toString(sum));
sum=0;
continue;
}else if (i == 479) {//右下角第一颗雷;
if ( Integer.parseInt(map.get(Integer.toString(left)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(leftUp)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(up)).toString())== 7 ) sum++;
map.put(Integer.toString(i),Integer.toString(sum));
sum=0;
return;
}else if (i29){//第一行;
if ( Integer.parseInt(map.get(Integer.toString(left)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(leftDown)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(down)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(right)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(rightDown)).toString())== 7 ) sum++;
map.put(Integer.toString(i),Integer.toString(sum));
sum=0;
continue;
}else if (i450){//最后一行;
if ( Integer.parseInt(map.get(Integer.toString(leftUp)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(up)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(rightUp)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(left)).toString())== 7 ) sum++;
if ( Integer.parseInt(map.get(Integer.toString(right)).toString())== 7 ) sum++;
map.put(Integer.toString(i),Integer.toString(sum));
sum=0;
continue;
}else if ( (i%30) == 0 ){//第一列;
推荐阅读
- java代码实现卷积计算,java 卷积
- 外资招聘gis,外资招聘要求
- 你用什么显卡用英语怎么说,你用的是什么配置
- 霞湖世家直播卖货最高记录,霞湖世家给谁代工
- php添加数组数据 php数组加法
- 临床医疗的区块链技术,医疗区块链应用
- 门店导航小程序源码码,店铺导航怎么写
- vb.net自动填写表单 vba 自动填写数据
- flutter国内,flutter国内案例