求代码优化

问题描述

最近在做打飞机小游戏,要子弹连发的,我是想在这里ArrayList<Missile>arr=newArrayList<Missile>();caseKeyEvent.VK_SPACE:arr.add(newMissile());每按一次空格就创建一个这样的对象,再当对象X坐标超过边界就用arr.remove()但是要创建一个类Missile我想把飞机,障碍物,导弹分到三个类里面去。但是我不知道哪些应该放进去,就是关于代码优化求助packagegraphics;importjava.awt.Color;importjava.awt.Graphics;importjava.awt.Image;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.KeyEvent;importjava.awt.event.KeyListener;importjava.util.ArrayList;importjavax.imageio.ImageIO;importjavax.swing.JPanel;importjavax.swing.Timer;publicclassGameextendsJPanelimplementsActionListener,KeyListener{privateintsize;privateImagecraft;privateImagebarrier;privateImagemissle;privateintx=0;privateinty=0;privateintdx=0;privateintdy=0;privateintmissleX=0;privateintmissleY=0;privateint[][]starsLoaction=newint[10][2];ArrayList<Missle>arr=newArrayList<Missle>();booleanshowMissle=false;privateTimertimer;publicGame(intsize,intx,inty){this.x=x;this.y=y;try{craft=ImageIO.read(Game.class.getResource("huiji.jpg"));barrier=ImageIO.read(Game.class.getResource("yunshi.bmp"));missle=ImageIO.read(Game.class.getResource("missle.bmp"));}catch(Exceptione){e.printStackTrace();}//注册键盘事件监听器this.setFocusable(true);this.addKeyListener(this);timer=newTimer(1,this);timer.start();for(int[]wangcai:starsLoaction){wangcai[0]=(int)(Math.random()*500);wangcai[1]=(int)(Math.random()*500);}}publicGame(){super();}publicvoidpaint(Graphicsg){super.paint(g);for(int[]wangcai:starsLoaction){g.drawImage(barrier,wangcai[0],wangcai[1],null);}if(showMissle){g.drawImage(missle,x,y,null);}setBackground(Color.BLACK);g.drawImage(craft,x,y,null);}/***飞船移动*/privatevoidmovecraft(){x+=dx;y+=dy;}/***障碍物移动*/privatevoidmovebarrier(){for(int[]wangcai:starsLoaction){if(wangcai[0]>=0){wangcai[0]-=2;}else{wangcai[0]=485;wangcai[1]=(int)(Math.random()*500);}}}privatevoidmovemissle(){if(missleX>=x+craft.getWidth(null)){missleX+=5;}else{showMissle=false;}}@OverridepublicvoidactionPerformed(ActionEvente){movemissle();movebarrier();movecraft();repaint();}/***开火*/publicvoidfire(){showMissle=true;missleX=x+craft.getWidth(null);missleY=y+craft.getHeight(null)/2;}/***键盘监听器*/@OverridepublicvoidkeyTyped(KeyEvente){}/***键盘按下的时候*/@OverridepublicvoidkeyPressed(KeyEvente){intkeyCode=e.getKeyCode();switch(keyCode){caseKeyEvent.VK_UP:dy=-10;break;caseKeyEvent.VK_DOWN:dy=10;break;caseKeyEvent.VK_LEFT:dx=-10;break;caseKeyEvent.VK_RIGHT:dx=10;break;caseKeyEvent.VK_SPACE:arr.add(newMissle());fire();break;default:break;}}@OverridepublicvoidkeyReleased(KeyEvente){intkeyCode=e.getKeyCode();switch(keyCode){caseKeyEvent.VK_UP:dy=0;break;caseKeyEvent.VK_DOWN:dy=0;break;caseKeyEvent.VK_LEFT:dx=0;break;caseKeyEvent.VK_RIGHT:dx=0;break;default:break;}}}

时间: 2024-10-24 04:22:28

求代码优化的相关文章

c#查询数据 代码优化 求大神

问题描述 List<T_Bas_EventDistinguish>lst=base.FindAll<T_Bas_EventDistinguish>().ToList();List<T_Bas_EventDistinguish>Newlst=newList<T_Bas_EventDistinguish>();for(inti=0;i<lst.Count;i++){T_Bas_EventDistinguishtb=newT_Bas_EventDisting

代码优化 运行时间太长 求指出问题!

问题描述 longstartTime=System.currentTimeMillis();//获取开始时间for(intk=0;k<titleTrees.size();k++)//二级目录即页面标题设置{longtreeStart=System.currentTimeMillis();//获取开始时间VstIndexJsonTreetitle=titleTrees.get(k);otherJsonBuffer.append("{");otherJsonBuffer.append

求高手帮忙,如何使用配置文件从而达到代码优化

问题描述 有2个系统,代码完全一样,只是里面设计的数据库的表不一样,同一个数据库,如何使用配置文件使用一套代码实现2个系统???高手指点!!

线程-volatile 关键字 作用结果求解惑

问题描述 volatile 关键字 作用结果求解惑 public class testVolatile { private int i = 0; // a线程调用 public void foo1() { try { while (true) { Thread.sleep(10); System.out.println(""第一个:"" + i); i++; } } catch (InterruptedException e) { // not to do; } }

我的网站首页不更新了,求高手指点一下,谢谢

问题描述 大家好,前段时间自己经营了一个网站,由于嫌进入网页的速度过慢找了一个代码优化软件优化了一下,前几天没注意,今天我更新软件的时候只在分页上更新了,但是网站首页怎样更新也不显示最新的内容,求高手指教一下是怎么回事啊.本人对网站一窍不通,现在是一筹莫展,头疼.大家看一下分页的我的软件更新到了9号,但是首页相关栏目却是5号的,不管怎样刷新都没用 解决方案 解决方案二:可能你只是在电脑本地的更新,还没有上传到服务器里呢.解决方案三:你对网站一窍不通..我们给你说也没用啊...找当初帮你做网站的人

我的网站的首页怎么不刷新啊 ?求高手指教

问题描述 大家好,前段时间自己经营了一个网站,由于嫌进入网页的速度过慢找了一个代码优化软件优化了一下,前几天没注意,今天我更新软件的时候只在分页上更新了,但是网站首页怎样更新也不显示最新的内容,求高手指教一下是怎么回事啊.本人对网站一窍不通,现在是一筹莫展,头疼.大家看一下分页的我的软件更新到了9号,但是首页相关栏目却是5号的,不管怎样刷新都没用 解决方案 解决方案二:自己抢沙发http://y13581025210.com/解决方案三:缓存或者静态化解决方案四:怎样解决啊解决方案五:是不是有链

Python 性能诊断及代码优化技巧

    程序代码的优化通常包含:减小代码的体积,提高代码的运行效率.这样可以让程序运行得更快.下面我们来具体谈谈 Python 代码优化常见技巧. 改进算法,选择合适的数据结构 一个良好的算法能够对性能起到关键作用,因此性能改进的首要点是对算法的改进.在算法的时间复杂度排序上依次是: O(1) -> O(lg n) -> O(n lg n) -> O(n^2) -> O(n^3) -> O(n^k) -> O(k^n) -> O(n!) 因此如果能够在时间复杂度上

深入理解Python 代码优化详解_python

选择了脚本语言就要忍受其速度,这句话在某种程度上说明了 python 作为脚本的一个不足之处,那就是执行效率和性能不够理想,特别是在 performance 较差的机器上,因此有必要进行一定的代码优化来提高程序的执行效率.如何进行 Python 性能优化,是本文探讨的主要问题.本文会涉及常见的代码优化方法,性能优化工具的使用以及如何诊断代码的性能瓶颈等内容,希望可以给 Python 开发人员一定的参考. 代码优化能够让程序运行更快,它是在不改变程序运行结果的情况下使得程序的运行效率更高,根据 8

求按百分比抽取数据算法

问题描述 求按百分比抽取数据算法 我有个需求 要求用百分比抽取数据以达到数据审阅的目的 我做了一个简单的程序但达不到要求 <?php header('Content-Type: text/html; charset=utf-8'); //抽取算法 for($kou=1;$kou<=100;$kou++){ $kou_count=0; for($i=1;$i<=100;$i++){ $key=($i)%(100/$kou); if( intval( $key ) == 0){ //echo