在一个300*400的窗体上,有随机产生的字母向下落。在键盘上敲字母,如果对了就消掉,初始成绩为1000分,每敲对一个字母加10分,如果字母落到屏幕下方,或者敲错,扣100分。

import java.awt.Color;

import java.awt.Graphics;

import java.awt.Panel;

import java.awt.event.KeyEvent;

import java.awt.event.KeyListener;

public class MyPanel extends Panel implements Runnable, KeyListener {

int x[]=new int[10];

int y[]=new int[10];

char c[]=new char[10];

int score=1000;

MyPanel()

{

for(int i=0;i<10;i++)

{

x[i]=(int)(Math.random()*300);

y[i]=(int)(Math.random()*300);

c[i]=(char)(Math.random()*26+97);

}

}

public void paint(Graphics g)

{

for(int i=0;i<10;i++)

{

g.drawString(new Character(c[i]).toString(), x[i], y[i]);

}

g.setColor(Color.RED);

g.drawString("你的成绩是:"+score,5,15);

}

public void run()

{

while(true)

{

for(int i=0;i<10;i++)

{

y[i]++;

if(y[i]>400)

{

y[i]=0;

x[i]=(int)(Math.random()*300);

c[i]=(char)(Math.random()*26+97);

score-=100;//字母掉到屏幕外扣分

}

}

try {

Thread.sleep(30);

}catch(Exception e) {}

repaint();

}

}

@Override

public void keyPressed(KeyEvent arg0) {

// TODO Auto-generated method stub

char keyC=arg0.getKeyChar();

int nowY=-1;

int nowIndex=-1;

for(int i=0;i<10;i++)

{

if(keyC==c[i])

{

if(y[i]>nowY)

{

nowY=y[i];

nowIndex=i;

}

}

}

if(nowIndex!=-1)

{

y[nowIndex]=0;

x[nowIndex]=(int)(Math.random()*300);

c[nowIndex]=(char)(Math.random()*26+97);

score+=10;

}

else

{

score-=100;

}

}

@Override

public void keyReleased(KeyEvent arg0) {

// TODO Auto-generated method stub

}

@Override

public void keyTyped(KeyEvent arg0) {

// TODO Auto-generated method stub

}

}

import java.awt.Frame;

public class MyChar {

public static void main(String[] args) {

// TODO Auto-generated method stub

Frame w=new Frame();

w.setSize(300, 400);

MyPanel mp=new MyPanel();

w.add(mp);

Thread t=new Thread(mp);

t.start();

w.addKeyListener(mp);

mp.addKeyListener(mp);

// w.show();

w.setVisible(true);

}

}

java打字母小游戏总结与收获,java:打字母小游戏demo相关推荐

  1. java用正则表达式 编写简单词法分析器_500+ 精选 Java 面试题大放送

    凡事预则立不预则废,无论你是近期打算跳槽,还是过完年准备跳槽,我想此刻开始准备面试,无疑是最明智的选择.信息过载的今天,想要找一份靠谱的高频面试题和权威的答案非常不容易,本文为你汇总了大量的干货面试资 ...

  2. 第17天学习Java的笔记(匿名对象,随机数,猜数字小游戏)

    33天! 匿名对象 package Demo1701;public class Person {String name;public void showName() {System.out.print ...

  3. 2015华为Word Maze 是一个网络小游戏,你需要找到以字母标注的食物

      Word Maze(单词迷宫) 描述: Word Maze 是一个网络小游戏,你需要找到以字母标注的食物,但要求以给定单词字母的顺序吃掉.如上图,假设给定单词 if,你必须先吃掉i然后才能吃掉f. ...

  4. Java黄金矿工小游戏,适合初学者练手项目_java游戏_java项目

    黄金矿工小游戏是一款非常经典的休闲类挖宝游戏!相信绝大多数人小时候应该都玩过.但是你会玩游戏,你会做游戏吗(狗头)?对!你没猜错!我今天就是来给大家说怎么用Java做游戏的,希望看完之后你也会做哦~ ...

  5. JAVA—小鑫の日常系列故事(五)——卡片游戏

    JAVA-小鑫の日常系列故事(五)--卡片游戏 Description 小鑫和健健喜欢在课间的时候玩游戏,今天他手里有n张卡片,每张卡片有一个数字.于是他就想和健健比一比更幸运.玩法是这样的:这n张卡 ...

  6. java小游戏:蜡笔小新!!!基于JAVA面向对象实现的跑酷类游戏(小新跑酷)(简单小游戏,仅仅使用Java面向对象基础实现(附上源码))

    一起来看一下蜡笔小新,很好看的,解压!!!!!!!!!!!!!!! 由于Java面向对象基础的游戏,有一定的局限,但是我觉得这款的可玩性已经很高了,话不多说一起来看游戏: 游戏界面,点击空格跳跃来躲避 ...

  7. Java坦克大战,基于Swing编写很哇塞的小游戏,可以做课程设计毕业设计

    Java坦克大战,基于Swing编写很哇塞的小游戏,可以做课程设计毕业设计 有图有真相 操作方法:ASDW控制移动,鼠标控制炮筒旋转,鼠标左键开枪,空格发射炮弹, 开发思路是标准的游戏开发思路,单线程 ...

  8. java小恐龙游戏_用Python实现谷歌的小恐龙游戏

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 谷歌流量器中有个很有名的彩蛋:当你网络出现问题时,就会出现一个"小恐龙游戏&quo ...

  9. java游戏界面制作_软件设计之基于Java的连连看小游戏(二)——游戏基础界面的制作及事件的添加...

    上次完成到游戏首页的制作,今天完成了游戏基础界面的制作以及事件的简单添加.由于功能尚未完全实现,因此游戏界面的菜单列表只是简单地添加了一下,其余菜单列表以及倒计时等在后续的制作中逐一完善. 1.首先在 ...

最新文章

  1. MySQL SQL优化
  2. 计算机原理与基础 —— 原码、反码、补码之间的快速转换和简单运算
  3. docker-ce版本私有仓库搭建
  4. shiro与springMVC整合
  5. 音视频技术开发周刊 | 150
  6. python购物车典例_Python入门:购物车实例
  7. 高可用之KeepAlived(2):keepalived+lvs
  8. centos7 安装vsftpd和配置以及虚拟用户权限分配
  9. ionic 实现 应用内(webview中html页面点击) 和 应用外 (浏览器html页面点击) 打开本地安装应用...
  10. linux 用户及用户授权
  11. 手把手带你用react hook撸一遍class组件的特性
  12. linux命令中文手册,Linux命令在线中文手册
  13. Java 基础 —— Hello World
  14. UI设计中的“吐司”是什么意思?
  15. 利用matlab实现pid控制,利用Matlab实现PID控制仿真
  16. C/C++---字符分布分割得到数字,适用于STM32/ESP32等等
  17. 我的理想计算机作文300字,我的理想作文300字(通用5篇)
  18. 使用zbar识别二维码
  19. 本题计算人体的 BMI BMI =体重÷身高的平方
  20. 2020年 前端面试问题总结:附答案

热门文章

  1. java 039 s rule_Java开发架构篇:DDD模型领域层决策规则树服务设计
  2. win7虚拟机黑苹果_首次安装黑苹果系统,原来如此简单,比真正的Mac电脑更快!...
  3. 计算机领域中的牛人,计算机视觉领域的牛人 | 丕子
  4. python logging
  5. vm虚拟机和windows共享文件夹
  6. android 全局光标颜色,EditText修改光标和背景色(绝对简单实用)
  7. plsql objects 过一段时间就会未连接oracle_记一次生产数据库故障排查--连接管理等待事件...
  8. 帆软填报提交显示违反唯一约束_贵州2020年高考网上填报志愿时间确定!这些事项需要注意...
  9. java400状态,java – HttpURLConnection:如何读取400响应的有效负载
  10. java note项目_note(java)