飞机大战微信java代码 飞机大战代码html

java飞机大战怎么修改?估计这个代码不全 , 按照提示应该可以这样解决:
在Hoofan的类中加上以下代码:
private static final long serialVersionUID = 1L;
@Override
public void mouseDragged(MouseEvent e)
{
// TODO Auto-generated method stub
}
@Override
public void mouseMoved(MouseEvent e)
{
// TODO Auto-generated method stub
}
java飞机大战求实现让敌机打子弹的方法首先创建四个类,敌机和英雄机子弹类,敌机类,英雄机类,类中定义各自的横竖x y坐标属性,值得注意的是,在写构造的时候 , 子弹的构造需要传入参数,因为子弹英雄机和敌机发出来的嘛 。再定义两种子弹移动方法 。移动方法很好写 , 子弹垂直方向发 , x——就行了 。再在main中调用就行了
写了一个java swing的飞机大战,但是碰撞检测获取坐标的地方出现了错误,求大神帮忙你好!很高兴为你回答问题 。
首先,请原谅我指出你的错误 。
错误一:int a[] =Integer.parseInt(jta.getText());
错处:从jta获取字符串后,转换为整数,乃1个数,用数组存放可以,但不能像你这样写 , 你这样写是将一个整形数组初始化为一个整数 。所以错 。。。
错误二:jtf.append(String.valueOf(max));
错处:JTextField没有append方法,无中生有 。所以错 。。。
错误三:思路错
错处:将文本域中获取的几个数字,不加处理则提取其中数字作为整数数组,是不行的
修正如下:(在文本框中输入几个数字,请用空格隔开,有问题请追问)
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Exam3_7 {
public static void main(String[] args) {
FrameText ft = new FrameText();
ft.setVisible(true);
}
}
class FrameText extends JFrame implements ActionListener {
JTextField jtf;
JTextArea jta;
JButton jbt, jbt1;
FrameText() {
super("输出最大数和最小数的程序");
Container con = getContentPane();
con.setLayout(new FlowLayout());
jta = new JTextArea("", 5, 10);
jtf = new JTextField(5);
jbt = new JButton("获取最大数");
jbt1 = new JButton("获取最小数");
jbt.addActionListener(this);
jbt1.addActionListener(this);
con.add(jta);
con.add(jtf);
con.add(jbt);
con.add(jbt1);
setSize(300, 300);
}
public void actionPerformed(ActionEvent e) {
String[] input = jta.getText().split(" ");
int[] a = new int[input.length];
for (int i = 0; iinput.length; i) {
a[i] = Integer.parseInt(input[i]);
}
if (e.getSource() == jbt) {
int max = a[0];
【飞机大战微信java代码 飞机大战代码html】for (int j = 1; ja.length; j) {
if (a[j]max) {
max = a[j];
}
}
jtf.setText(String.valueOf(max));
}
if (e.getSource() == jbt1) {
int min = a[0];
for (int j = 1; ja.length; j) {
if (a[j]min) {
min = a[j];
}
}
jtf.setText(String.valueOf(min));
}
}
}
300行代码,用Python写个飞机大战春节这些天,闲赋在家,甚是无聊 , 便萌发了研究经典小 游戏 :飞机大战的念头 , 想必大家可能玩过微信的这款小 游戏 , 给我的感觉是这款 游戏 怎么可以做得这么好呢,操作简单,容易上手,简直是“老少皆宜”啊~
既然这款 游戏 这么棒,能否自己动手用 Python 来实现呢?事实证明是可以的 。
先来看下飞机大战 游戏 最终实现的动态效果图 。
在导入pygame之前,需要先使用命令:
进行包模块的安装
(1). __init__初始化方法:
进行 游戏 开始的初始化操作,包含:创建 游戏 窗口,创建 游戏 的敌机,背景等精灵
(2). __create_sprites创建精灵方法:
负责创建不同角色的精灵,并将其添加至精灵组
(3). start_game 游戏 开始方法:
负责播放背景音乐,使用while循环来设置刷新帧率、事件监听、碰撞检测、更新绘制精灵组、更新显示屏幕图像
(4). __event_handler事件监听方法:
负责监听用户在 游戏 界面的操作 , 例如:关闭 游戏 窗口,左右方向键的移动等
(5). __check_collide碰撞检测方法:
负责检测子弹是否碰撞到敌机,敌机是否碰撞到英雄飞机 , 然后做出相应的操作
(6). __update_sprites更新精灵方法:
负责各个角色精灵的更新并绘制到屏幕,展示给用户
(7). __game_over 游戏 结束方法:
当检测到碰撞事件的发生,判断是否需要调用该方法来退出 游戏
鼓励大家亲自动手实现一下这个小 游戏,还是挺有趣的 。代码注释较为详细,在实践过程中,可以仔细阅读以便于加深理解 。
java做的Android 飞机大战中如何实现敌机个数随机实现?比如在一个屏幕中最多只能出现5个敌机!可以使用java.util.Random类来产生一个随机数发生器 。它有两种形式的构造函数,分别是Random()和Random(long seed) 。Random()使用当前时间即System.currentTimeMillis()作为发生器的种子 , Random(long seed)使用指定的seed作为发生器的种子 。
随机数发生器(Random)对象产生以后,通过调用不同的method:nextInt()、nextLong()、nextFloat()、nextDouble()等获得不同类型随机数 。
1生成随机数
Random random = new Random();
Random random = new Random(100);//指定种子数100
random调用不同的方法 , 获得随机数 。
如果2个Random对象使用相同的种子(比如都是100) , 并且以相同的顺序调用相同的函数,那它们返回值完全相同 。如下面代码中两个Random对象的输出完全相同
import java.util.*;
class TestRandom {
public static void main(String[] args) {
Random random1 = new Random(100);
System.out.println(random1.nextInt());
System.out.println(random1.nextFloat());
System.out.println(random1.nextBoolean());
Random random2 = new Random(100);
System.out.println(random2.nextInt());
System.out.println(random2.nextFloat());
System.out.println(random2.nextBoolean());
}
}
2指定范围内的随机数
随机数控制在某个范围内,使用模数运算符%
import java.util.*;
class TestRandom {
public static void main(String[] args) {
Random random = new Random();
for(int i = 0; i10;i) {
System.out.println(Math.abs(random.nextInt()));
}
}
}
获得的随机数有正有负的,用Math.abs使获取数据范围为非负数
3获取指定范围内的不重复随机数
import java.util.*;
class TestRandom {
public static void main(String[] args) {
int[] intRet = new int[6];
int intRd = 0; //存放随机数
int count = 0; //记录生成的随机数个数
int flag = 0; //是否已经生成过标志
while(count6){
Random rdm = new Random(System.currentTimeMillis());
intRd = Math.abs(rdm.nextInt())2 1;
for(int i=0;icount;i){
if(intRet[i]==intRd){
flag = 1;
break;
}else{
flag = 0;
}
}
if(flag==0){
intRet[count] = intRd;
count;
}
}
for(int t=0;t6;t){
System.out.println(t "-" intRet[t]);
}
}
}
Java随机数类Random介绍
Java实用工具类库中的类java.util.Random提供了产生各种类型随机数的方法 。它可以产生int、long、float、double以 及Goussian等类型的随机数 。这也是它与java.lang.Math中的方法Random()最大的不同之处,后者只产生double型的随机 数 。
类Random中的方法十分简单,它只有两个构造方法和六个普通方法 。
构造方法:
(1)public Random()
(2)public Random(long seed)
Java产生随机数需要有一个基值seed , 在第一种方法中基值缺省,则将系统时间作为seed 。
普通方法:
(1)public synonronized void setSeed(long seed)
该方法是设定基值seed 。
(2)public int nextInt()
该方法是产生一个整型随机数 。
(3)public long nextLong()
该方法是产生一个long型随机数 。
(4)public float nextFloat()
该方法是产生一个Float型随机数 。
(5)public double nextDouble()
该方法是产生一个Double型随机数 。
(6)public synchronized double nextGoussian()
该方法是产生一个double型的Goussian随机数 。
例2 RandomApp.java 。
//import java.lang.*;
import java.util.Random;
public class RandomApp{
public static void main(String args[]){
Random ran1=new Random();
Random ran2=new Random(12345);
//创建了两个类Random的对象 。
System.out.println("The 1st set of random numbers:");
System.out.println(" Integer:" ran1.nextInt());
System.out.println(" Long:" ran1.nextLong());
System.out.println(" Float:" ran1.nextFloat());
System.out.println(" Double:" ran1.nextDouble());
System.out.println(" Gaussian:" ran1.nextGaussian());
//产生各种类型的随机数
System.out.print("The 2nd set of random numbers:");
for(int i=0;i5;i){
System.out.println(ran2.nextInt() " ");
if(i==2) System.out.println();
//产生同种类型的不同的随机数 。
System.out.println();
}
}
}
Random random=new Random();
random.nextInt();
也可以有nextFloat等等,各种基本类型都有
Math.random也可以
比如说你想要0-10之间的随机数
你可以这样写
(int)(Math.random()*10);
JAVA产生指定范围的随机数》
《JAVA产生指定范围的随机数》
产生机制:
产生Min-Max之间的数字
实现原理:
Math.round(Math.random()*(Max-Min) Min)
long Temp; //不能设定为int,必须设定为long
//产生1000到9999的随机数
Temp=Math.round(Math.random()*8999 1000);
刚刚开始学java,老师给的代码在自己运行电脑上就出现了错误根据javax.imageio.IIOException: Can't read input file!异常 , 意思是无法读取到文件,原因是background = ImageIO.read(new File(Game.class.getResource(
"/img/background.png").getFile()));代码中的文件不在本地或者路径不对,解决办法是将图片路径填写正确 。
关于飞机大战微信java代码和飞机大战代码html的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读