Java五子棋全代码-增加了人机对战功能
用Java编写简单的五子棋——人机对战!
前言
2022-02-04,农历正月初四 首先在这祝大家新年快乐。 距离上两个版本的更新已经过去了很久,因为年前工作非常忙,经常熬到凌晨,导致我看大家私信和回复的时间有限,但我会用上厕所摸鱼的宝贵时间仔细查看并回应大家的互动。 那天我看到有同学问我人机对战如何实现,说实话这玩意三言两语很难解释清楚,不如直接写一个让大家看来的直接,所以我没有回答他的问题,而是找时间把这个功能做出来,争取让所有想问这个问题的同学找到答案。 终于来到了年假,招待完亲戚朋友后,脑子里的第一件事就是将这个功能做完展示给大家,博主不才,花了一下午时间干出来,就当我给大家的新年礼物了。
测试类
import javax.swing.*; public class Test { public static void main(String[] args) { Object[] objects={ "人人对战","人机对战"}; int a = JOptionPane.showOptionDialog(null,"请选择游戏模式","请选择",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE,null, objects, objects[0]); System.out.println(a); if (a == 0){ MyJFrame mj = new MyJFrame(); mj.myJFrame(); }else if (a == 1){ MyJFrame_AI mjAI = new MyJFrame_AI(); mjAI.myJFrame(); }else{ System.exit(0); } } }
MyJFrame类代码
MyJFrame_AI类代码
结束语
更新
2022-02-04 不放心,又测试了一晚上BUG,果然有问题: 1.修复了悔棋时只能撤回电脑棋子的BUG 2.修复了在特定情况下,电脑方或玩家方胜利没有反应的BUG 3.优化了电脑的权值计算,但还是不太聪明的样子
上一篇:
IDEA上Java项目控制台中文乱码