资源简介
五子棋的人机对弈的实现,其编程语言是 java,带gui界面,这适合AI的初学者下载学习
代码片段和文件信息
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RadialGradientPaint;
import java.awt.RenderingHints;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.geom.Ellipse2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Vector;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.imageio.ImageIO;
import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
public class fivechess extends Jframe implements ActionListener{
JButton back=new JButton(“悔棋“);
JButton start=new JButton(“开始“);
JButton game=new JButton(“中级难度“);
JButton game2=new JButton(“高级难度“);
GameBoard gb=new GameBoard();
JPanel pb=new JPanel();
JPanel pg=new JPanel();
public fivechess(){
pb.add(start);
pb.add(back);
pb.add(game);
pb.add(game2);
setLayout(new BorderLayout());
add(pbBorderLayout.NORTH);
add(pg);
gb.setOpaque(true);
add(gb);
back.addActionListener(this);
start.addActionListener(this);
game.addActionListener(this);
game2.addActionListener(this);
setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
setSize(526549);
setLocation(400100);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
fivechess f=new fivechess();
f.settitle(“五子棋“);
f.setVisible(true);
}
public class GameBoard extends JPanel implements MouseListener{
public BufferedImage bgImage=null;//背景图片
public int row=14;//棋盘行数
public int col=14;//棋盘列数
public int length=30;//每个格子的大小
public int edgedis=30;//边距
public int[][] ChessBoard=new int[row+1][col+1];//棋子代表的二维数组,其中0代表没有落子1代表黑子2代表白子
//棋局判断,其中为有可能出现五子连线的类型,并判分,分数d额合理不合理影响了智能程度*代表了有想相同颜色的棋子,O为空#代表被堵住了
//一共32种棋型
public String[] type={“UUUUU“//胜利
“OUUUUO““UOUUUU“//活四
“OUUUUC““CUUUUO““CUOUUU““CUUUOU““CUUOUU““UUOUUC““UUOUUC““UUUOUC“//眠四
“OOUUUOO““OUUUO“
“COUUUOO““COOUUUO““COUUUOO““OUUUOOC““OOUUUOC““OUUUOOC“//活三和上一个评分差别不大
“OUOUUO““OUUOUO“//活三
“CUUUOO““OOUUUC“
“OUOUUC““CUUOUO““OUUOUC“//眠三
“OOOUUOOO““OOUUOO““OUUO““OOUOUOO““OUOOUO“//活二
“OOOUUC““CUUOOO““OOUOUC““CUOUOO“//眠二
“OOOOUOOOO““OOUOO““OUO“//都为空白
};
public int[] score={10000000 //胜利
900000850000//活四
80008000800080008000800080008000//眠四
7500 7500 //活三
720072007200720072007200//活三
50005000
30003000//眠三
250025002500//眠三
100010001000800800
500500500500
805020
};
in
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-12-08 09:06 chess\
文件 301 2017-11-19 19:05 chess\.classpath
文件 381 2017-11-19 19:05 chess\.project
目录 0 2017-12-08 09:06 chess\.settings\
文件 598 2017-11-19 19:05 chess\.settings\org.eclipse.jdt.core.prefs
目录 0 2017-12-08 09:06 chess\bin\
文件 13197 2017-12-08 00:23 chess\bin\fivechess$GameBoard.class
文件 2148 2017-12-08 00:23 chess\bin\fivechess.class
文件 44985 2017-11-20 11:57 chess\bin\wuziqi.jpg
目录 0 2017-12-08 09:06 chess\src\
文件 18340 2017-12-08 00:23 chess\src\fivechess.java
文件 44985 2017-11-20 11:57 chess\src\wuziqi.jpg
相关资源
- java动态识别文件编码EncodingDetect.jav
- 五子棋 人机对弈 只有棋盘版本
- 微信java支付和登录api demo
- Java经典编程题汇总
- java在线预览需要的jar包
- 未来教育二级java激活码
- Java课程设计文档说明书商城项目
- 双人对战java贪吃蛇
- Java爬虫项目
- 坦克大战Java源码适合新手
- JavaDES通过秘钥加密解密Demo
- 基于java socket使用tcp udp进行简易控制
- JAVA网络程序设计动态温度曲线绘制
- Java动态编译Java代码,运行在内存中,
- javaweb登录页面
- Java深入微服务原理改造房产销售平台
- 基于Java的Oracle学生成绩管理系统
- 用java做一个计算器和科学计算器
- Jpcap.dll_64x_32x,及。jar包
- java录屏详细代码
- Java学习路径.pdf
- ftp安装 Java实现客户端
- 射击小球键控java小游戏
- Java+SQLServer学生成绩管理系统
- jtds 1.2.7.jar
- javax.servlet.jar包
- java开发详细设计文档模板
- java的学生管理系统+数据库
- webupload Java版轻松上传4个G文件
- Javaweb图书借阅管理系统
评论
共有 条评论