局部变量怎样去成员区域调用呢
老师在求随机生成数,直到生成88为止停止循环,我看优秀案例,为什么加入while循环?我试了一下不加入while只会生成一个随机数,括号里的101是指0-100 101个数是吗?
public class Test { public static void main(String[] args) { // TODO Auto-generated method stub Random random = new Random(); while(true) { int c = random.nextInt(101); if (c == 88) { System.out.println(c); System.out.println("随机生成了88,循环停止"); break; }else { System.out.println(c); } } } }
“==”两边的操作数有没有什么要求,数据类型要不要相同?
老师为什么我这边一定要加个static,要不然就是有问题
package com.bjsxt; import java.awt.*; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class MyGameFrame extends Frame { //初始化窗口 public void launchFrame(){ this.setTitle("飞机大战--尚学堂.百战程序员"); this.setVisible(true);//窗口默认不可见。需要让他可见 this.setSize(500,500); this.setLocation(300,300); //增加关闭窗口的动作 this.addWindowFocusListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); } @Override public void paint(Graphics g) { //g就是一支画笔 g.drawLine(100,50,400,400); g.clearRect(100,50,400,400); g.drawOval(100,50,400,400); } public static void main(String[] args) { MyGameFrame frame= new MyGameFrame(); frame.launchFrame(); } }
老师关不了窗口呢 。我写的都一样啊。不知道为什么
恩恩,懂了,也就是说这个代码在实际运行中只是把P当成原点,其他的都不能当成原点计算是吧
看了一下保存位置没问题啊,查了很久还是报错
高淇老师看起来真的好年轻,头发好多啊
老师,帮忙看一下为什么没有出现飞机
com.bjsxt.planejava.awt.*java.awt.event.WindowAdapterjava.awt.event.WindowEventMyGameFrame Frame { Image =GameUtil.()Image =GameUtil.()=Plane =Plane()Plane =Plane()Plane =Plane()(Graphics g){System..println(+)++g.drawImage().drawMyself(g).drawMyself(g).drawMyself(g)} (){ .setTitle()setVisible()setSize(Constant.Constant.)setLocation().addWindowListener(WindowAdapter() { (WindowEvent e) { System.()} })PaintThread().start()} PaintThread Thread{ (){ (){ repaint(){ Thread.()} (InterruptedException e) { e.printStackTrace()} } } } Image =(Graphics g){ (==) =.createImage(Constant.Constant.)Graphics gOff=.getGraphics()paint(gOff)g.drawImage()} (String[] args) { MyGameFrame gameFrame=MyGameFrame()gameFrame.launchFrame()} }
com.bjsxt.planejava.awt.*GameObject { Image (Image imgxyspeedwidthheight) { .= img.= x.= y.= speed.= width.= height} (Image img xyspeed) { .=img.=x.=y.= speed.=img.getWidth().=img.getHeight()} (){} (Graphics g){ g.drawImage(()())} Rectangle (){ Rectangle(()())} }
com.bjsxt.planejava.awt.*Plane GameObject { (Graphics g){ .drawMyself(g)+=} (Image imgxyspeed) { (imgxyspeed)} }
老师,有什么平台有java的编程题?最好有面向对象的编程题
语句块是什么意思啊,后期会讲嘛?、、、、、、
老师我在Piane类里面加了几个if语句,想要飞机在边缘的时候停下来,但是每次停下来的位置都不一样,该怎么调整呢?
package com.bjsxt.plane; import java.awt.*; import java.awt.event.KeyEvent; public class Plane extends GameObject{ boolean left,right,up,down; //飞机的方向控制 @Override public void drawMyself(Graphics g) { super.drawMyself(g); //飞机飞行的算法,可以自行设定 // x += speed; if(left) { x -= speed; } if(right) { x += speed; } if(up) { y -= speed; } if(down) { y += speed; } } public void addDirection(KeyEvent e){ if (e.getKeyCode() == KeyEvent.VK_LEFT) { left = true; } if (e.getKeyCode() == KeyEvent.VK_RIGHT) { right = true; } if (e.getKeyCode() == KeyEvent.VK_UP) { up = true; } if (e.getKeyCode() == KeyEvent.VK_DOWN) { down = true; } if (x < 100){ left = false; } if (x > 400){ right = false; } if (y < 100){ up = false; } if (y > 400){ down = false; } /* switch (e.getKeyCode()){ case KeyEvent.VK_LEFT: left = true; break; case KeyEvent.VK_RIGHT: right = true; break; case KeyEvent.VK_UP: up = true; break; case KeyEvent.VK_DOWN: down = true; break; }*/ } public void minusDirection(KeyEvent e){ if (e.getKeyCode()==KeyEvent.VK_LEFT){ left = false; } if (e.getKeyCode()==KeyEvent.VK_RIGHT){ right = false; } if (e.getKeyCode()==KeyEvent.VK_UP){ up = false; } if (e.getKeyCode()==KeyEvent.VK_DOWN){ down = false; } /* switch (e.getKeyCode()){ case KeyEvent.VK_LEFT: left = false; break; case KeyEvent.VK_RIGHT: right = false; break; case KeyEvent.VK_UP: up = false; break; case KeyEvent.VK_DOWN: down = false; break; }*/ } public Plane(Image img, double x, double y, int speed) { super(img, x, y, speed); } }
如视频中,为什么可以在循环中重复声明变量,但在循环外重复声明将会报错?
while (true) { int a = 1; } // 可以正常运行; int a=1; int a=1; // 不能通过编译
//使用递归算法完成阶乘:1!+2!+3!+4!+5! public class zuoye6 { public static int jiec(int a){ //计算a的阶乘 int sum=1; int sum1=0; for(int i=a;i>0;i--){ sum=sum*i; } a--; if(a>0) { //计算1~a的阶乘的和 sum1 = sum1+jiec(a-1); } System.out.println(sum1); return sum; } public static void main(String[] args) { jiec(4); } }
老师,帮忙看看我的这个程序哪里错了呢
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637