如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
Java程序设计—五子棋一、源码importjava.awt.*;importjava.awt.event.MouseListener;importjava.awt.event.MouseEvent;importjava.util.Vector;importjavax.swing.*;publicclasswuziqiextendsJFrameimplementsMouseListener{publicstaticvoidmain(Stringargs[]){wuziqid=newwuziqi();}Vectorv=newVector();Vectorwhite=newVector();Vectorblack=newVector();JButtonbtnstart=newJButton("开始");JButtonbtnstop=newJButton("停止");JToolBartool=newJToolBar();booleanb;//用来判断白棋还是黑棋intblackcount,whitecount;//计算悔棋/***构造方法*/publicwuziqi(){super("五子棋");this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭按钮Containercon=this.getContentPane();this.addMouseListener(this);//添加监听tool.add(btnstart);//添加按钮tool.add(btnstop);this.setSize(550,500);//设置窗体大小this.setVisible(true);}intw=20;//间距大小是双数intpx=100,py=100;//棋盘的坐标intpxw=(px+w),pyw=(py+w);intwidth=w*16,height=w*16;intvline=(width+px);//垂直线的长度inthline=(height+py);//水平线的长度/***画棋盘*/publicvoidpaint(Graphicsg){g.clearRect(0,0,this.getWidth(),this.getHeight());//清除面板g.setColor(Color.BLACK);//设置网格颜色g.drawRect(px,py,width,height);//网格大小g.drawString("简易五子棋",110,70);for(inti=0;i<15;i++){g.drawLine(pxw+i*w,py,pxw+i*w,hline);//每条横线和竖线g.drawLine(px,pyw+i*w,vline,pyw+i*w);}for(intx=0;x<v.size();x++){Stringstr=(String)v.get(x);Stringtmp[]=str.split("-");inta=Integer.parseInt(tmp[0]);intb=Integer.parseInt(tmp[1]);a=a*w+px;b=b*w+py;if(x%2==0){g.setColor(Color.CYAN);}else{g.setColor(Color.BLACK);}g.fillArc(a-w/2,b-w/2,w,w,0,360);}}publicvoidupdeta(Graphicsg){this.paint(g);}publicvoidvictory(intx,inty,Vectorcontain){//判断胜利的方法intcv=0;//计算垂直的变量intch=0;//计算水平的变量intci1=0;//计算斜面的变量1intci2=0;//计算斜面的变量2for(inti=1;i<5;i++){if(contain.contains((x+i)+"-"+y))ch++;elsebreak;}System.out.println("前面执行了"+ch+"次");for(inti=1;i<5;i++){if(contain.contains((x-i)+"-"+y))ch++;elsebreak;}