求java五子棋代码游戏代码(有报酬)

java五子棋游戏源代码,J2SE
资料价格:2学豆&&[]&&
文件类型: (doc)[下载阅读器]
文件大小:0.09MB
上传时间:
标&&&&&&&签: &
论文写作技巧
java五子棋游戏源代码,J2SE
您可能需要的
[] [] [] [] [] [] [] []java五子棋小游戏(含源代码)_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
java五子棋小游戏(含源代码)
上传于||暂无简介
阅读已结束,如果下载本文需要使用2下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩22页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢君,已阅读到文档的结尾了呢~~
五子棋游戏J***A源代码[整理版],五子棋java源代码,五子棋的源代码,五子棋ai源代码,java五子棋代码,五子棋 java,java网络五子棋,java小游戏源代码,java游戏源代码,五子棋小游戏
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
五子棋游戏J***A源代码[整理版]
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口共有 2689 人关注过本帖
标题:我自己用J***A编的一个五子棋游戏(有简单的AI)!
等 级:新手上路
&&问题点数:0&&回复次数:4&&&
我自己用J***A编的一个五子棋游戏(有简单的AI)!
import java.awt.*;import java.util.*;import javax.swing.*;import java.awt.geom.*;import java.awt.event.*;
class PaintPanel extends JPanel{
JDialog labHeiQi = new JDialog(new JFrame() ,"胜利",false);
JLabel jbm1=new JLabel("★★★★★★★★★★★★★★★★★");
JLabel jb1=new JLabel("★★★★★恭喜,你赢了!!★★★★★");
JDialog labHongQi = new JDialog(new JFrame(),"失败",false);
JLabel jbm2=new JLabel("★★★★★★★★★★★★★★★★");
JLabel jb2=new JLabel("★★★你输了,请继续努力!★★★");
public int [][]
public int[]
public int isSuccess=0;
ArrayList Items = new ArrayList();
public PaintPanel() {
setLayout(new BorderLayout());
ButtonPanel buttonPanel = new ButtonPanel();
add(buttonPanel, BorderLayout.SOUTH);
addMouseListener(new MouseHandler());
map=new int [19][19];
for(int i=0;i&19;i++){
for(int j=0;j&19;j++){
map[i][j]=-1;
cp=new int [2];
public void lab(int k){
labHeiQi.setLayout(new BorderLayout());
labHeiQi.add("Center",jb1);
labHeiQi.add("North",jbm1);
labHeiQi.pack();
labHongQi.setLayout(new BorderLayout());
labHongQi.add("Center",jb2);
labHongQi.add("North",jbm2);
labHongQi.pack();
labHeiQi.setVisible(true);
labHongQi.setVisible(true);
public void paintComponent(Graphics g) {
int startX = 50;
int startY = 50;
super.paintComponent(g);
Graphics2D g2 = (Graphics2D)g;
for(int i=0; i&19; i++) {
g2.draw(new Line2D.Double(startX, startY+20*i, startX+360, startY+20*i));
g2.draw(new Line2D.Double(startX+20*i, startY, startX+20*i, startY+360));
for(int i=0; i&Items.size(); i++) {
int k=(i+2)%2;
g2.setColor(Color.BLACK);
if(isSuccess==1){
g2.setColor(Color.RED);
if(isSuccess==2){
g2.fill((Ellipse2D)Items.get(i));
void myRepaint() {
repaint();
void reset(){
isSuccess=0;
for(int i=0;i&19;i++){
for(int j=0;j&19;j++){
map[i][j]=-1;
class MouseHandler extends MouseAdapter {
public void mousePressed(MouseEvent event) {
int x = event.getX();
int y = event.getY();
x=(x-50)/20;
y=(y-50)/20;
if(chessExist(x,y)&&isSuccess==0){
paintItem(x, y);
isSuccess=Success(x,y,1);
map[x][y]=1;
repaint();
if(isSuccess==0){
computer();
int q=cp[0];
int r=cp[1];
paintItem(q,r);
isSuccess=Success(q,r,2);
map[q][r]=2;
repaint();
paintItem(int x, int y) {
x=x*20+50;
y=y*20+50;
if(x &30 && x &430 && y &30 && y &430) {
int X = x / 20;
int Y = y / 20;
int centerX = X*20 + 10;
int centerY = Y*20 + 10;
Ellipse2D ellipse = new Ellipse2D.Double();
ellipse.setFrameFromCenter(centerX, centerY, centerX+8, centerY+8);
Items.add(ellipse);
}public void computer(){ //计算机走棋
int maxblack,maxHong,maxtemp,max=0;
for(int i=1;i&18;i++){
for(int j=1;j&18;j++){
if(chessExist(i,j)){//判断是否可以下子
maxblack=CheckMax(i,j,1);
maxHong=CheckMax(i,j,2);
maxtemp=Math.max(maxblack,maxHong);
if(maxtemp&max){
}}public int CheckMax(int x,int y,int person){//判断某一点四个方向上棋子的最大值
int maxnum=0;
int up,down,left,
left=right=x;
up=down=y;
}while(up&=0&&map[x][up]==person);
}while(down&19&&map[x][down]==person);
if((up-down)&maxnum){
maxnum=up-
}while(right&19&&map[align=right][y]==person);
}while(left&=0&&map[align=left][y]==person);
if((right-left)&maxnum){
maxnum=right-
left=right=x;
down=up=y; do{
}while(right&19&&down&19&&map[align=right][down]==person);
}while(left&=0&&up&=0&&map[align=left][up]==person);
if((right-left)&maxnum){
maxnum=right-
left=right=x;
down=up=y; do{
}while(right&19&&down&=0&&map[align=right][down]==person);
}while(left&=0&&up&19&&map[align=left][up]==person);
if((right-left)&maxnum){
maxnum=right-
int Success(int x,int y,int person){ //判断胜负
int up,down,left,
left=right=x;
up=down=y;
}while(up&=0&&map[x][up]==person);
}while(down&19&&map[x][down]==person);
if((up-down)&5){
}while(right&19&&map[align=right][y]==person);
}while(left&=0&&map[align=left][y]==person);
if((right-left)&5){
left=right=x;
down=up=y; do{
}while(right&19&&down&19&&map[align=right][down]==person);
}while(left&=0&&up&=0&&map[align=left][up]==person);
if((right-left)&5){
left=right=x;
down=up=y; do{
}while(right&19&&down&=0&&map[align=right][down]==person);
}while(left&=0&&up&19&&map[align=left][up]==person);
if((right-left)&5){
boolean chessExist(int i,int j){//判断该格是否有棋子
if(map[i][j]==-1)
} class ButtonPanel extends JPanel{
public ButtonPanel() {
JButton reset = new JButton("新游戏");
add(reset);
JButton quit = new JButton("退出");
add(quit);
ResetEvent listenerR = new ResetEvent();
reset.addMouseListener(listenerR);
QuitEvent listenerQ = new QuitEvent();
quit.addMouseListener(listenerQ);
}class QuitEvent extends MouseAdapter {//离开游戏
public void mouseClicked(MouseEvent event) {
System.exit(1);
}class ResetEvent extends MouseAdapter {
//重新开始游戏
public void mouseClicked(MouseEvent event) {
Items.clear();
myRepaint();
}}class GameFrame extends JFrame {
public GameFrame() {
setTitle("五子棋");
setSize(500, 600);
setResizable(false);
PaintPanel panel = new PaintPanel();
getContentPane().add(panel);
}}public class Game {
public static void main(String[] args) {
GameFrame frame = new GameFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
由于棋子的情况采用数组存储,坐标都经过了处理,这样也导致棋盘的最外一圈不能下棋,电脑还可以!大家有兴趣的可以看看,这个是我数据结构做的课程设计!
搜索更多相关主题的帖子:
等 级:新手上路
帖 子:610
搂住辛苦的劳动, 还是要顶的
等 级:新手上路
帖 子:309
顶一下,转到j2se区吧
泛出微微的蓝色的光,像有生命般涌动着,闪烁着,平滑而优美,达到了机械和美学结合的最高境界
等 级:贵宾
威 望:13
帖 子:769
楼主``厉害`
不过``我帮你测了一下`好多的异常啊` 加油``
学编程不能急,要慢慢来。
等 级:论坛游民
帖 子:54
专家分:10
能不能注释一下吗
版权所有,并保留所有权利。
Powered by , Processed in 0.044822 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights ReservedJava编写的简单五子棋
Java编写的五子棋游戏源代码,挺简单的那种五子棋游戏代码,Gobang.jar是生成的运行文件,有Java运行环境的可运行看效果,或拷贝到支持Java的手机上运行,想学Java的朋友,这是个挺好的初级游戏范例。
运行环境:Java/Eclipse
相关标签:
软件大小:14.4K
软件属性:共享版 | 简体中文
软件评级:
收录更新: |
相关链接:暂无演示
软件截图:
下载地址:
本类推荐下载
本类最新更新
最新网页特效

参考资料

 

随机推荐