Java写的第一个小程序

大二刚开学,开始学习Java,结合假期里学到的一些知识,写了一个简单的程序。

有点像之前很火的”别踩白块儿“,但是简单的多,暂时就把它叫做“静止的别踩白块儿”。

【玩法】鼠标点击出现色块的地方,点对加10分,点错减100分,负分游戏结束。

现在的不足和问题:

点击错误时,不能马上显示Game Over,必须再点对一次才能显示。我原想应该是if(grade<0)那个程序段的位置不对,但是调试不出来。

另外,方块永远只能按同一速度出现,一个点完才会出现下一个,这也是个问题,现在我的水平还不能写出来。

下面是程序代码:

 1 import java.awt.*;
 2 import java.awt.event.MouseEvent;
 3 import java.awt.event.MouseListener;
 4
 5 import javax.swing.*;
 6
 7 public class fangkuan {
 8     public static void main(String[] args) {
 9         JFrame w = new JFrame();
10         w.setSize(600, 700);
11
12         MyPanel4 mp = new MyPanel4();
13         mp.setBackground(Color.WHITE);
14         mp.addMouseListener(mp);
15         w.add(mp);
16
17         w.setVisible(true);
18     }
19 }
20
21 class MyPanel5 extends Panel implements MouseListener{
22     int []x= {0,200,400};
23     int []j= new int[10];
24     int a,b,X,Y;
25     int grade=0;
26
27     public MyPanel5(){
28         for(int i=0;i<10;i++){
29             j[i]=(int)(Math.random()*10);
30             a=(int)(Math.random()*3);
31             b=(int)(Math.random()*3);
32         }
33     }
34     public void paint(Graphics g){
35         super.paint(g);
36
37         if(grade<0){
38             g.setColor(Color.RED);
39             Font f =new Font("",Font.BOLD,20);
40             g.setFont(f);
41             g.drawString("Game over", 400, 650);
42             return;
43         }
44
45         Font f= new Font("",Font.BOLD,20);
46         g.setFont(f);
47         g.drawString("Score: "+grade, 400, 620);
48
49
50         g.setColor(new Color((new Double(Math.random()*128)).intValue()+128,(new Double(Math.random()*128)).intValue()+128,(new Double(Math.random()*128)).intValue()+128));
51         g.fillRect(x[a], x[b], 200, 200);
52
53     }
54
55
56     @Override
57     public void mouseClicked(MouseEvent e) {
58         // TODO Auto-generated method stub
59
60     }
61     @Override
62     public void mouseEntered(MouseEvent e) {
63         // TODO Auto-generated method stub
64
65     }
66     @Override
67     public void mouseExited(MouseEvent e) {
68         // TODO Auto-generated method stub
69
70     }
71     @Override
72     public void mousePressed(MouseEvent e) {
73         // TODO Auto-generated method stub
74         X=e.getX();
75         Y=e.getY();
76         if(X>=x[a]&&X<=(x[a]+200)&&Y>=x[b]&&Y<=(x[b]+200)){
77             a=(int)(Math.random()*3);
78             b=(int)(Math.random()*3);
79             grade+=10;
80             repaint();
81         }else{
82             grade-=100;
83         }
84     }
85     @Override
86     public void mouseReleased(MouseEvent e) {
87         // TODO Auto-generated method stub
88
89     }
90 }
时间: 2024-10-29 05:15:19

Java写的第一个小程序的相关文章

小程序初体验:手把手教你写出第一个小程序(一)

本文笔者将根据quick start中的范例代码,带大家简单地剖析一下小程序的运行方式,并介绍小程序开发中一些通用的特性,带着大家一步步写出自己的小程序. 适用对象:前端初学者,对小程序开发感兴趣者 tips:由于笔者也是一位前端菜鸟,所以尽量用简单直白的语言为大家讲解,如有说的不到位的地方,还望多多指教. 吊了我们一年胃口的小程序终于和大家见面了.经过了一天的发酵,小程序已经成为了今天的超级头条(汪汪哭晕在厕所). 经历了一天媒体对小程序的狂轰滥炸,相信大家对于小程序一定充满了好奇.与其跟风转

第一个小程序

学习java到现在,尝试写了第一个小程序. 程序内容:一个输入日期然后可以打印日历并标注日期的小程序. 遇到的问题:1.如何解决遍历数组到星期6然后换行的问题. 2.如何解决判断是否换行和遍历数字的先后问题. 解决方法:1.用除7的余数来解决,一周只有7天,用7减去前面得到的开始于星期几的数字,因为开始的第一天也算的,所以还要加1就得到了第一行末端的数字.因为后面都是7天一次换行了,所以用从0开始的一个计数器判断在除七余数是这个数字的时候换行.但是要排除一种特殊情况,如何这个月从星期日开始,就变

python 初探,第一个小程序

8-9年前有过一段时间的C语言编程经验,最近接触了一下python,解释性编程语言的结构相较于C语言还是更加方便的. 亲手写的第一个小程序实现的是系统登录功能,同一用户名输错3次密码,将会锁定此帐号. 写的过程中有几点感觉和C语言的差别, 代码行末不需要':'结尾, 程序段是通过相同的缩进,而不是{}.

Android编程权威指南-读书笔记(二)-第一个小程序

Android编程权威指南-读书笔记(二) -第一个小程序 第一个例子介绍 应用名为GeoQuiz.用户通过单击True或False按钮来回答屏幕上的问题,GeoQuiz可即时反馈答案正确与否. 这个例子为我们简单介绍了几个基本组件的使用,以及基本的事件监听.让我们对基本组件的使用和事件的监听有一个基本的了解. 这篇文章分为2个部分,第一部分就是创建简单的UI.第二个部分就是对这个UI增加代码来响应一些操作. (注:所有不明白或者不理解的东西其实都不重要,后面都会有更详细的介绍.) 本章的目标

微信小程序-----安装,编写第一个小程序和运行到手机端

第一步: 微信公众平台注册账号,并选择小程序,网址:mp.weixin.qq.com 填写相关信息,如:主体类型(个人或者企业) AppID  在开发中都是用的到的,服务器域名在网络请求也是用的到的. 完成信息之后,下载开发工具: 下载地址: https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html 选择自己需要的版本,下载直接安装,和平常的软件安装一样,直接运行 用微信扫码登录即可,然后点击添加项目, 输入申请的AppID

python学习笔记(10)-python第一个小程序hello world

本节点标题1.第一个小程序hello world1.1.python2与python3的hello world1.2.换行的打印 =======================================================================================================================1.第一个小程序hello world1.1.python2与python3的hello world>>> print &q

java新手的第一个小东西,或许小东西都算不上=。 =

import java.util.ArrayList; import java.util.Scanner; /** * 系统类 * * @author Administrator * */ public class Systems { private Scanner input = new Scanner(System.in); private Database db = new Database(); //用户数据库 private ArrayList<Users> usersList =

ruby学习之一(安装、第一个小程序“hello, world”)

在网页http://www.rubychina.net/downloads/ 上找到 --〉Ruby on Windows --〉Ruby 1.8.6 One-Click Installer Stable version (recommended) 点击鼠标右键,另存为-,存入你的本地硬盘,这就完成了下载. 运行下载好的文件ruby185-21,出现安装向导界面,傻瓜式的安装不多敖述. 从Windows XP的开始-〉运行 -〉输入cmd,打开一个DOS窗口: 1. 版本 输入 ruby –v

2小时快速搭建第一个小程序,有可能吗

想搭建自己的小程序,有没有基础. 想让代理开发,无奈费用太高. 想提升小程序开发技能,应对职称技能竞争. 今年是小程序开发,应用爆发年,小程序开发和运营,发展的如火如荼.快来抢占自己的流量高地,快来截流互联网洪流,到自己的鱼塘. 学习就是增值,掌握了微信小程序,基本上也就掌握了百度,支付宝类小程序开发. 来吧,跟随David老师,一起学习,开启职场新技能.来吧,做为陕西省技术能手,电子商务师,David老师,相信自己有能力,带好大家,做好我们的训练营,让每一位学生,都有所成,学到技能. [零基础