public static void main(String[] args) {
// TODO Auto-generated method stub
Board b=new Board();//初始化棋盘
do{
switch(n%2){
/**
* 1.人执黑先行 得到x,y,n
* 2.执行落子算法
* 3.更新棋盘
* 4.n++
* 5.跳出循环
*/
case 1://扫描棋盘得到x y,n
Board.LuoZiGengXin(xx, yy);//落子 和 更新棋盘 处理
System.out.println("人下了一个棋");
break;
/**
*
*/
case 0:
if(Board.Max_white()>=Board.Max_black()){//执行进攻算法
Board.Attack();
System.out.println("电脑进攻下了一个棋");
}else{//执行 防守算法
Board.Defence();
System.out.println("电脑防守下了一个棋");
}
break;
}
}while(Board.Over());//有没有分出胜负
Board.WinOrFail();//谁赢?
}问题是: 我现在可以做到人点棋盘的时候得到 坐标x,y ,n。n是静态变量 表示棋盘上的棋子个数 但是不知道该怎么控制 当我点击棋盘的时候 用这个时刻点击棋盘的xyn 来 更新棋盘。 求大神啊,做完这个我就可能拿到offer 应届毕业生求大神啊!!java 五子棋
// TODO Auto-generated method stub
Board b=new Board();//初始化棋盘
do{
switch(n%2){
/**
* 1.人执黑先行 得到x,y,n
* 2.执行落子算法
* 3.更新棋盘
* 4.n++
* 5.跳出循环
*/
case 1://扫描棋盘得到x y,n
Board.LuoZiGengXin(xx, yy);//落子 和 更新棋盘 处理
System.out.println("人下了一个棋");
break;
/**
*
*/
case 0:
if(Board.Max_white()>=Board.Max_black()){//执行进攻算法
Board.Attack();
System.out.println("电脑进攻下了一个棋");
}else{//执行 防守算法
Board.Defence();
System.out.println("电脑防守下了一个棋");
}
break;
}
}while(Board.Over());//有没有分出胜负
Board.WinOrFail();//谁赢?
}问题是: 我现在可以做到人点棋盘的时候得到 坐标x,y ,n。n是静态变量 表示棋盘上的棋子个数 但是不知道该怎么控制 当我点击棋盘的时候 用这个时刻点击棋盘的xyn 来 更新棋盘。 求大神啊,做完这个我就可能拿到offer 应届毕业生求大神啊!!java 五子棋
解决方案 »
- java.io.IOException: CreateProcess: 求助
- 如何输入一个函数表达式?
- java 正则求解,100分 在线急盼!!!
- [初学请教];JAVA哪些教材比较好?
- When call ArrayList.add() or Hashtable ,the java platform pass value or reference?
- 高效的二分查找算法,为什么java中"mid = low + (high - low)>>1"写不行?求高手解答
- 如何求两个Timestamp的差值
- 救命!大家来帮小弟一把!谢谢!
- 在Applet中如何让可编辑的 JComboBox 响应键盘、鼠标、焦点等事件?
- JAVAwin101.7环境变量
- 求解这个小程序肿么运行不了
- 抽象类与static和final
调用repaint()方法可以刷新页面。
你的意思是不是想让我们帮你去实现Board.LuoZiGengXin(xx, yy);
方法?
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
标记位?轮到电脑下棋的时候改为false,你点击先进行标记位判断,为false直接忽略。
电脑下完了改为true,然后就允许你点击了。
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
标记位?轮到电脑下棋的时候改为false,你点击先进行标记位判断,为false直接忽略。
电脑下完了改为true,然后就允许你点击了。可以具体点么 不懂什么叫标记位
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
标记位?轮到电脑下棋的时候改为false,你点击先进行标记位判断,为false直接忽略。
电脑下完了改为true,然后就允许你点击了。就是允不允许我点击 这个代码怎么写
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
标记位?轮到电脑下棋的时候改为false,你点击先进行标记位判断,为false直接忽略。
电脑下完了改为true,然后就允许你点击了。可以具体点么 不懂什么叫标记位
就是我在类里面创建一个静态的boolean形式的成员变量,
static boolean flag=false;
这样每次操作我只需要对这个成员变量判断值,如果符合就执行,不符合就跳过。
如果执行的话执行完毕可以修改这个成员变量值,就不如人下完了棋等待电脑下棋了,那么我就设置为false,就不再允许监听人的点击事件了。
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
标记位?轮到电脑下棋的时候改为false,你点击先进行标记位判断,为false直接忽略。
电脑下完了改为true,然后就允许你点击了。就是允不允许我点击 这个代码怎么写
不是不允许点击,是点击了之后没反应和不点击一样。。
比如点击触发方法click();
方法内
public void click(){
if(flag==false)return;
//下面写正常的点击后的逻辑就行了。
}
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
标记位?轮到电脑下棋的时候改为false,你点击先进行标记位判断,为false直接忽略。
电脑下完了改为true,然后就允许你点击了。就是允不允许我点击 这个代码怎么写
不是不允许点击,是点击了之后没反应和不点击一样。。
比如点击触发方法click();
方法内
public void click(){
if(flag==false)return;
//下面写正常的点击后的逻辑就行了。
}
就不在允许监听 人点击的事件怎么写?
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
标记位?轮到电脑下棋的时候改为false,你点击先进行标记位判断,为false直接忽略。
电脑下完了改为true,然后就允许你点击了。就是允不允许我点击 这个代码怎么写
不是不允许点击,是点击了之后没反应和不点击一样。。
比如点击触发方法click();
方法内
public void click(){
if(flag==false)return;
//下面写正常的点击后的逻辑就行了。
}
就不在允许监听 人点击的事件怎么写?
我崩溃,怎么解释你就听不懂呢。。
不允许监听实现起来不现实,你需要去声明取消监听状态。。
但是监听到事件时候所执行的代码和操作我们可以判断是否允许其运行。。
1. 是我下棋
2.我点棋盘 得到xyn 然后在重绘棋盘
3.该电脑下棋了,电脑根据现在的情况下棋 在重绘棋盘
4. 判断输赢 没输赢继续下棋
然后就是循环这个
我的问题是 到我下棋的时候 怎么让 我点击棋盘得到xyn的时候在 重绘 没到我下棋的时候 我点击棋盘也没用
标记位?轮到电脑下棋的时候改为false,你点击先进行标记位判断,为false直接忽略。
电脑下完了改为true,然后就允许你点击了。就是允不允许我点击 这个代码怎么写
不是不允许点击,是点击了之后没反应和不点击一样。。
比如点击触发方法click();
方法内
public void click(){
if(flag==false)return;
//下面写正常的点击后的逻辑就行了。
}
就不在允许监听 人点击的事件怎么写?
我崩溃,怎么解释你就听不懂呢。。
不允许监听实现起来不现实,你需要去声明取消监听状态。。
但是监听到事件时候所执行的代码和操作我们可以判断是否允许其运行。。
哦 我在想想 大概明白了 但是函数还不知道是哪个 我去查查