ImageVerifierCode 换一换
格式:DOC , 页数:10 ,大小:41KB ,
资源ID:12100757      下载积分:8 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/12100757.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(java简单贪吃蛇代码.doc)为本站上传会员【鼓***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

java简单贪吃蛇代码.doc

1、/* * 贪吃蛇 */ import java、awt、*;                      //包含文件 import javax、swing、*; import java、awt、event、*; public class GreedSnack extends JFrame{ int i,j;  ﻩWH_panel panel;                //定义WH_panel得实例 ﻩJMenuBar wh_bar;            

2、          //定义菜单实例 ﻩpublic GreedSnack()                //构造函数 ﻩ{ ﻩ super("贪吃蛇——game-—");               //框架名称 ﻩContainer c=getContentPane();             //获得框架容器 ﻩsetBounds(200, 200, 620, 465);           //设置frame得大小   c、setLayout

3、null);                        //设置框架布局    wh_bar=new JMenuBar();           //定义菜单实例     setJMenuBar(wh_bar);           //设置菜单 ﻩ JMenu[]m={new JMenu("文件”),new JMenu("编辑")};  //主菜单   ﻩ JMenuItem[][]mi={              

4、   //下拉菜单项 ﻩﻩﻩ{new JMenuItem("开始”),new JMenuItem("退出”)}, //设计菜单得内容 ﻩ ﻩﻩ{new JMenuItem(”分数"),new JMenuItem("记录分")} };                    ﻩfor(i=0;i<m、length;i++)                    //添加菜单 {           ﻩ ﻩwh_bar、add(m[i]);       

5、     //添加下拉菜单 ﻩﻩfor(j=0;j

6、ﻩmi[0][0]、addActionListener(new ActionListener()    //设置菜单监听 { ﻩ public void actionPerformed(ActionEvent e)      // ﻩ { ﻩ try ﻩﻩﻩ {  ﻩ ﻩﻩ panel、thread、start();                 //开始线程 ﻩﻩﻩﻩﻩpanel、right();           //直接执行right函数 ﻩﻩ } ﻩ

7、ﻩﻩ catch(Exception ee){}                  //对线程进行捕获错误 } ﻩﻩ}); addKeyListener(new KeyAdapter() ﻩ{ ﻩﻩ  public void keyPressed(KeyEvent e)           //键盘监听 ﻩﻩﻩ { ﻩﻩ if(e、getKeyCode()==KeyEvent、VK_LEFT)   //监听左键 ﻩﻩ ﻩ  panel、left();        

8、   //执行left函数 ﻩﻩﻩ if(e、getKeyCode()==KeyEvent、VK_RIGHT)         //监听右键 ﻩﻩﻩﻩﻩ panel、right();                   //执行right函数 ﻩ if(e、getKeyCode()==KeyEvent、VK_UP)           //监听上键   panel、up();               //执行up函数 ﻩ if(e、getKeyCode()==KeyEv

9、ent、VK_DOWN)     //监听下键 ﻩ ﻩﻩ panel、down();           //执行down函数 ﻩ    }                            //键盘事件 ﻩﻩﻩ public void keyTyped(KeyEvent e)  {} ﻩﻩ public void keyReleased(KeyEvent e) {}  ﻩ }); ﻩpanel=new WH_panel(); panel、setLayo

10、ut(null);            //panel布局 c、add(panel);           //添加panel } public static void main(String args[])       //主函数 ﻩ{ ﻩﻩGreedSnack app=new GreedSnack();             //设置frame得实例 ﻩ app、setDefaultClos

11、eOperation(JFrame、EXIT_ON_CLOSE);    //关闭窗口 ﻩﻩapp、setVisible(true);              //设置成可见 }                        //main }                                      //greedsnack class WH_panel extends JPane

12、l implements Runnable          //panel函数 { ﻩThread thread;                 //定义线程 ﻩint x=0,y=0,wh_direct=0;                      //设置变量 ﻩint food_x=60,food_y=80;               //初始食物得位置 ﻩint d_l,d_r,d_u,d_d;        

13、               //定义行使方向 int i,j,wh_stop; int food_date;                         //定义食物数 int [][]wh_array=new int[30][20];                  //定义数组 ﻩpublic WH_panel()                  //构造函数 { ﻩthis、setBounds

14、0, 0,600,400);          //设置panel得大小 ﻩﻩthread=new Thread(this);         //创建线程thread for(i=0;i〈30;i++)                      //给数组付初值 ﻩ{ ﻩﻩfor(j=0;j<20;j++)                     //列标小于20 { wh_array[i][

15、j]=0;               //将数组赋为0 ﻩ }                        //for ﻩ }                   //for ﻩ}                            //WH_panel() ﻩpublic void left()            

16、              //left函数 { if(d_r!=3)                         //假设现在向右行进 ﻩ{ ﻩ wh_direct=1;                               //wh_direct为1 ﻩ d_l=1;                       //标记左不能运行 ﻩﻩﻩd_r=3; ﻩﻩ d_u=0;                  

17、     //标记上可以运行 ﻩd_d=0;                       //标记下可以运行 ﻩﻩ} ﻩﻩelse                 //假设现在不就是向右行进 ﻩ { ﻩ d_l=0;                   //向左可以运行 ﻩﻩ} ﻩ} ﻩpublic void right()                             //右

18、键函数 ﻩ{ ﻩif(d_l!=1)           //假设现在向左行进 ﻩﻩ{ ﻩﻩwh_direct=2;                  //wh_direct为2 ﻩd_l=1; ﻩ d_r=3;             //向右不可以运行 ﻩﻩﻩd_u=0;                       //向上可以运行 ﻩ d_d=0;

19、                  //向下可以运行 } ﻩelse                   //假设没有向左行进 ﻩ{ ﻩﻩ d_r=0;                              //向右可以运行 ﻩ } ﻩ} public void up()         //向上键函数 { if(d_d!=7)    

20、        //假设现在向下行进 { ﻩﻩ wh_direct=3;                    //wh_direct为3 ﻩ d_u=5;                       //向上不可以运行 ﻩﻩﻩd_d=7; ﻩﻩﻩd_l=0;                           //向左可以行进 ﻩ d_r=0;         

21、         //向右可以运行 ﻩ } ﻩ else                   //假设现在没有向下运行 ﻩ{ ﻩ d_u=0;                       //可以向上行进 } ﻩ} public void down()               //向下键得函数 ﻩ{ ﻩﻩif(d_u!=5)                        

22、    //如果现在向上运行 ﻩ{ ﻩﻩ wh_direct=4;                     //wh_direct为4 ﻩ d_u=5; ﻩ ﻩd_d=7;                       //现在不可向下行进 ﻩ d_r=0;                      //现在可向右行进 ﻩ d_l=0;                       //现在向左行进 ﻩ}

23、 else              //如果现在没有向上行进 ﻩ{ ﻩ d_d=0;                         //可以向下行进 ﻩﻩ} ﻩ} public void run()                     //线程函数 {     ﻩﻩwhile(true)                          //while循环 ﻩﻩ{ ﻩﻩ if(

24、wh_direct==1)                        //向左方 ﻩﻩ { ﻩ ﻩﻩif(x>=20&&y>=0&&x〈=580&&y<=380)       //规定范围 ﻩﻩﻩif(wh_array[x/20-1][y/20]!=0)          //当下一个有蛇身 ﻩﻩ { ﻩ ﻩ wh_stop=1;           //wh_stop=1 ﻩ } ﻩﻩ x=x—20;            

25、       //x坐标减小变化 ﻩﻩ wh_run(); ﻩ } ﻩﻩﻩif(wh_direct==2)                //向右方 ﻩﻩﻩ{ ﻩ if(x>=0&&y〉=0&&x〈=560&&y〈=380)      //规定范围 ﻩﻩ if(wh_array[x/20+1][y/20]!=0)      //当下一个有蛇身 ﻩﻩﻩ{ ﻩﻩ ﻩwh_stop=1;             //wh_stop=

26、1 ﻩ } ﻩ   x=x+20;                    //x坐标增大变化 ﻩﻩﻩ   wh_run(); ﻩ ﻩ} ﻩ if(wh_direct==3)                //向上方 ﻩ{ ﻩﻩif(x〉=0&&y>=20&&x<=580&&y〈=380)          //规定范围 ﻩﻩﻩ if(wh_array[x/20][y/20-1]!=0)   //当下一个有蛇身

27、{ ﻩﻩ wh_stop=1;              //wh_stop=1 ﻩﻩ} ﻩﻩ y=y-20;                           //y坐标减小变化 ﻩ ﻩwh_run(); ﻩ ﻩ} ﻩﻩﻩif(wh_direct==4)                             //向下方 ﻩ { ﻩ ﻩﻩif(x〉=0&&y>=0&&x<=580&&y<=360)      //规定范围 ﻩ ﻩ if(wh_arra

28、y[x/20][y/20+1]!=0)         //当下一个有蛇身 ﻩ { ﻩﻩﻩﻩﻩwh_stop=1;             //wh_stop=1 ﻩﻩﻩﻩ} ﻩﻩﻩ y=y+20;                 //y坐标增大变化 ﻩﻩ wh_run(); ﻩﻩ} ﻩﻩif(food_x==x&&food_y==y)              //蛇头得坐标与食物相同 ﻩ { ﻩﻩﻩfood_x=((int)

29、Math、random()*30))*20;           //随机食物坐标X ﻩ food_y=((int)(Math、random()*20))*20;          //随机食物坐标Y ﻩ repaint();                         //刷新绘图 ﻩﻩ food_date=food_date+1;         //食物数进行自加 ﻩ } ﻩ ﻩif(x==600||y==400||x<0||y〈0||wh_stop==1)    

30、//到达边界跳出循环 ﻩﻩ{ ﻩ ﻩbreak; ﻩ } ﻩﻩ} ﻩ} public void wh_run()                      //蛇身行进函数 ﻩ{ ﻩ /* ﻩ  * 此函数为贪吃蛇得重点函数,实现蛇身得各种变化,主要思路就是: ﻩﻩ * 将面板分割成20X30得数组,并将其初始值赋为0,每次将蛇头 ﻩﻩ * 值赋为1,然后对数组非0得数进行加1操作,若数组内得值大于 ﻩ * 蛇本身应有得长度,就将其值改为0,最后对数组不为0得进行绘 ﻩ * 图. */ ﻩif(x>=0&&

31、y>=0&&x<=580&&y<=380)       //当坐标满足数组范围时 ﻩ{ ﻩ wh_array[x/20][y/20]=1;        //此时蛇头数组值为1 ﻩ} ﻩ for(i=0;i<30;i++)                  //检测整个数组     { ﻩ for(j=0;j<20;j++)                  //y小于20 ﻩ   { ﻩ ﻩ if(wh_a

32、rray[i][j]!=0)         //如果数组中含有不为0得值 ﻩﻩ { ﻩ    wh_array[i][j]=wh_array[i][j]+1;       //对其加1操作 ﻩ ﻩ}                     //if     }                     //for    }              

33、          //for repaint();                       //从绘窗口 wh_sleep(200);                  //睡眠 ﻩ for(i=0;i〈30;i++)               //给数组付初值       { ﻩfor(j=0;j<20;j++)        

34、      //y小于20 ﻩ  ﻩ{ ﻩ if(wh_array[i][j]>food_date+1)   //若蛇身长度大于食物数加1 ﻩﻩ { ﻩ ﻩﻩﻩwh_array[i][j]=0;                    //将值变为0 ﻩﻩ ﻩ}                         //if    }                     //for     

35、  }                                  //for }                             //wh_run() protected void paintponent(Graphics g)          //绘图函数   { g、setColor(Color、getHSBColor(0, 0, 200));       //panel背景颜色 ﻩﻩg、fil

36、lRect(0, 0, this、getWidth(), this、getHeight()); ﻩfor(i=0;i<30;i++)                //检测数组 { ﻩﻩﻩfor(j=0;j<20;j++)                         //y坐标小于20 ﻩﻩ{ ﻩﻩ if(wh_array[i][j]!=0)                //在wh_array不为0时 ﻩﻩ { ﻩﻩﻩ   g、setColor(Color、BLU

37、E);           //蛇身颜色 ﻩ ﻩ   g、fillRect(20*i, 20*j, 20, 20);         //画蛇身 ﻩ ﻩ g、setColor(Color、lightGray);          //蛇身外框颜色 ﻩﻩ   g、drawRect(20*i, 20*j, 20, 20);       //蛇身外框 ﻩ ﻩﻩ}                      //if ﻩ }      

38、            //for ﻩ }                  //for ﻩ g、setColor(Color、RED);             //食物颜色 g、fillOval(food_x,food_y,20,20);           //画食物 ﻩif(x==600||y==400||x<0||y〈0||wh_stop==1) 

39、       //当蛇撞墙时 { ﻩﻩﻩg、setColor(Color、getHSBColor(0, 0, 200));        //panel背景颜色 ﻩg、fillRect(0, 0, this、getWidth(), this、getHeight());   //画矩形充当背景 ﻩ g、setColor(Color、BLACK);               //设置字符串颜色 ﻩ g、drawString("game over”, 250, 150);       //

40、输出game over ﻩ}                    //if ﻩ}                             //paintponent ﻩpublic static void wh_sleep(long millis)                    //自定义sleep函数 ﻩ{ ﻩtry     ﻩ{ Thread、sleep(millis);          

41、        //调用线程休眠 ﻩﻩ}                             //try catch(InterruptedException e)              //捕获错误 { ﻩﻩSystem、err、println("”+e); ﻩ e、printStackTrace();                      //输出错误 }                               //catch ﻩ}                             //wh_sleep } 

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服