import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import java.awt.image.*;
import java.awt.geom.*;
import java.util.*;
class Car{
Image img;
int x, y;
Dimension dim;
Car(Image img){
this.img=img;
}
Car(Image img, int x, int y){
this.img=img; this.x=x; this.y=y;
Car(Image img, int x, int y, Dimension dim){
this(img, x, y);
this.dim=dim;
void draw(Graphics g, ImageObserver observer){
g.drawImage(img, x, y, observer);
int getX(){ return x;}
int getY(){ return y;}
void setX(int x){this.x=x;}
void setY(int y){this.y=y;}
void setLocation(int x, int y){
this.x=x; this.y=y;
int getWidth(){ return img.getWidth(null);}
int getHeight(){ return img.getHeight(null);}
void move(int dx, int dy){
x◆=dx;
y◆=dy;
if(dim!=null){
if(x0)x=0;
if(x◆getWidth()dim.getWidth())
x=(int)dim.getWidth()-getWidth();
boolean intersects(Car car){
return getRectangle().intersects(car.getRectangle());
boolean intersects(int x, int y){
return getRectangle().intersects(x, y, getWidth(), getHeight());
public class CarRace extends Applet implements KeyListener, Runnable{
Image buff;
Canvas screen;
Car redCar;
Button bStart;
Thread game;
boolean loop=true;
int road;
Random rnd=new Random();
public void init(){
prepareResource();
setBackground(Color.blue);
initScreen();
add(screen);
bStart=new Button("霸烙 矫累");
add(bStart);
bStart.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
screen.requestFocus();
if(!game.isAlive())
game.start();
});
void prepareResource(){
Image imgRed=getImage(getCodeBase(),"images/red_car.gif");
Image imgBlue=getImage(getCodeBase(),"images/blue_car.gif");
Image imgGreen=getImage(getCodeBase(),"images/green_car.gif");
MediaTracker mt=new MediaTracker(this);
try{
mt.addImage(imgRed, 0);
mt.addImage(imgBlue, 1);
mt.waitForAll();
}catch(Exception e){}
buff=createImage((int)dim.getWidth(), (int)dim.getHeight());
for(int i=0;i10;i◆◆){
enemy[i]=new Car(imgBlue, 0, 0);
for(int i=10;ienemy.length;i◆◆){
enemy[i]=new Car(imgGreen, 0, 0);
for(int i=0;ienemy.length;i◆◆){
setEnemy(i);
game=new Thread(this);
public void stop(){
loop=false;
public void run(){
while(loop){
drawScreen();
void initScreen(){
screen=new Canvas(){
public void paint(Graphics g){
if(gs==null){
};
screen.setSize(dim);
screen.addKeyListener(this);
void setEnemy(int en){
next:while(true){
x=rnd.nextInt((int)dim.getWidth()-enemy[en].getWidth());
for(int j=0;jenemy.length;j◆◆){
if(j!=en enemy[j].intersects(x, y))continue next;
enemy[en].setLocation(x, y);
break;
void check(Car en){
if(redCar.intersects(en)){
if(redCar.getX()en.getX()){
else{
synchronized void drawScreen(){
gb.clearRect(0, 0, (int)dim.getWidth(), (int)dim.getHeight());
gb.setPaint(new Color(100, 100, 100));
gb.fillRect(0, 0, (int)dim.getWidth(), (int)dim.getHeight());
drawRoad();
enemy[i].draw(gb, screen);
if(enemy[i].getY()dim.getHeight())
check(enemy[i]);
redCar.draw(gb, screen);
gs.drawImage(buff, 0,0, screen);
void drawRoad(){
gb.setPaint(Color.yellow);
public void keyPressed(KeyEvent ke){
if(ke.getKeyCode()==KeyEvent.VK_LEFT){
redCar.move(-10,0);
else if(ke.getKeyCode()==KeyEvent.VK_RIGHT){
redCar.move(10,0);
public void keyReleased(KeyEvent ke){}
public void keyTyped(KeyEvent ke){}
这个是一个典型的Applet,文件名应该是CarRace.java,需要图片作为车子等等,本人也是别人给的,但是还要个.html文件来运行它,代码为:
/Applet
请楼主采纳
import?java.util.Scanner;
public?class?Guess?{
private?static?final?int?F?=?1;
private?static?final?int?T?=?100;
public?static?void?main(String[]?args)?{
int?num?=?(int)(Math.random()?*?T)?◆?F;
Scanner?s?=?new?Scanner(System.?in?);
//?初始化
int?guest?=?-1;
while?(true)?{
System.out.print("请输入你猜测的数字("?◆?F?◆?"-"?◆?T?◆?"):");
//?每次输入的值,采纳即可
guest?=?s.nextInt();
if?(guest?num)?{
System.out.println(F?◆?"--"?◆?guest);
}?else?if?(guest?num)?{
System.out.println(guest?◆?"--"?◆?T);
}?else?{
System.out.println("中奖了");
s.close();
import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Toolkit;
import javax.sound.sampled.AudioFileFormat;
import javax.sound.sampled.AudioSystem;
import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.Rectangle;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JOptionPane;
import javax.swing.JSlider;
import javax.swing.JLabel;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.io.File;
import java.util.Vector;
public class Frame extends JFrame implements Runnable {
JPanel contentPane;
JPanel jPanel1 = new JPanel();
JButton jButton1 = new JButton();
JSlider jSlider1 = new JSlider();
JLabel jLabel1 = new JLabel();
int zhengque = 0, cuowu = 0;
int rush_count = 0; //记录关数
char list[] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L',
'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y',
Vector number = new Vector();
String paiduan = "true";
AudioClip Musci_anjian, Music_shibai, Music_chenggong;
public Frame() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
//-----------------声音文件---------------------
Musci_anjian = Applet.newAudioClip(new File("sounds//anjian.wav")
.toURL());
Music_shibai = Applet.newAudioClip(new File("sounds//shibai.wav")
Music_chenggong = Applet.newAudioClip(new File(
"sounds//chenggong.wav").toURL());
//---------------------------------------
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(null);
setTitle("Frame Title");
jPanel1.setBorder(BorderFactory.createEtchedBorder());
jPanel1.setLayout(null);
jButton1.setText("开始");
jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this));
jSlider1.setMaximum(100);
jSlider1.setMinimum(1);
jLabel1.setText("速度");
contentPane.add(jPanel1);
contentPane.add(jButton1);
contentPane.add(jSlider1);
contentPane.add(jLabel1);
this.addKeyListener(new MyListener());
jButton1.addKeyListener(new MyListener());
jSlider1.addKeyListener(new MyListener());
jSlider1.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
rapidity = jSlider1.getValue();
public void run() {
number.clear();
zhengque = 0;
cuowu = 0;
paiduan = "true";
while (count = rush[rush_count]) {
Thread t = new Thread(new Tthread());
t.start();
count ◆= 1;
} catch (InterruptedException e) {
e.printStackTrace();
while (true) { // 等待最后一个字符消失
if (number.size() == 0) {
if (zhengque == 0) { // 为了以后相除..如果全部正确或者错误就会出现错误. 所以..
zhengque = 1;
if (cuowu == 0) {
cuowu = 1;
if (paiduan.equals("true")) { // 判断是否是自然结束
JOptionPane.showMessageDialog(null, "恭喜你过关了");
rush_count ◆= 1; // 自动加1关
if (rush_count rush.length) {
jSlider1.setValue(rapidity); // 选择位置
Thread t = new Thread(this);
} else {
JOptionPane.showMessageDialog(null, "牛B...你通关了..");
rush_count = 0;
count = 0;
JOptionPane.showMessageDialog(null, "请再接再励");
public void jButton1_actionPerformed(ActionEvent e) {
count = rush[rush_count] ◆ 1;
paiduan = "flase";
class Tthread implements Runnable {
boolean fo = true;
int Y = 0, X = 0;
JLabel show = new JLabel();
jPanel1.add(show);
String parameter = list[(int) (Math.random() * list.length)] ◆ "";
Bean bean = new Bean();
bean.setParameter(parameter);
bean.setShow(show);
number.add(bean);
show.setText(parameter);
while (fo) {
// ---------------------数字下移--------------------
Thread.sleep(rapidity);
fo = false;
for (int i = number.size() - 1; i = 0; i--) {
Bean bn = ((Bean) number.get(i));
if (parameter.equalsIgnoreCase(bn.getParameter())) {
cuowu ◆= 1;
◆ "个");
number.removeElementAt(i);
Music_shibai.play();
class MyListener extends KeyAdapter {
public void keyPressed(KeyEvent e) {
String uu = e.getKeyChar() ◆ "";
for (int i = 0; i number.size(); i◆◆) {
Bean bean = ((Bean) number.get(i));
if (uu.equalsIgnoreCase(bean.getParameter())) {
zhengque ◆= 1;
bean.getShow().setVisible(false);
Music_chenggong.play();
Musci_anjian.play();
public static void main(String[] args) {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
Frame frame = new Frame();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = frame.getSize();
if (frameSize.height screenSize.height) {
frameSize.height = screenSize.height;
if (frameSize.width screenSize.width) {
frameSize.width = screenSize.width;
frame.setVisible(true);
private Frame adaptee;
this.adaptee = adaptee;
public void actionPerformed(ActionEvent e) {
class Frame1_jButton1_actionAdapter implements ActionListener {
Frame1_jButton1_actionAdapter(Frame adaptee) {
adaptee.jButton1_actionPerformed(e);
class Bean {
String parameter = null;
JLabel show = null;
public JLabel getShow() {
return show;
public void setShow(JLabel show) {
this.show = show;
public String getParameter() {
return parameter;
public void setParameter(String parameter) {
this.parameter = parameter;
以上就是土嘎嘎小编为大家整理的java写的小游戏代码相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!