package com;
import javautilArrayList;
import javautilList;
public class Main {
/
@param args
/
public static void main(String[] args) {
List<Integer> list = new ArrayList();
for(int i=0;i<5;i++){
int count=80;
Systemoutprintln("第"+i+1+"次游戏,本次游戏分数为"+count);
listadd(count);
}
if(listsize()!=5){
Systemoutprintln("游戏次数小于5次,不能晋级");
}else{
int j=0;
for(int i=0;i<listsize();i++){
if(listget(i)>=80){
j++;
}
}
if(j>=4){
Systemoutprintln("游戏晋级一级");
}else if(j>=3&&j<4){
Systemoutprintln("游戏晋级二级");
}else{
Systemoutprintln("很抱歉,不能晋级");
}
}
}
}
用我自己的方法写了一个,看LZ喜欢不喜欢
12是石头,23是剪子,31是布first表示第一个人。second表示第二个人!
import javautilRandom;
public class Print {
public static void main(String[] args) {
//"12"是石头,“23”是剪子,“31”是布
String[] a = {"12", "23", "31"};
Random r = new Random ();
String first = a[rnextInt(3)];
String second = a[rnextInt(3)];
Systemoutprintln("12是石头,23是剪子,31是布first表示第一个人。second表示第二个人!\n---------");
if (firstequals(second)) {
Systemoutprintln(first + "--" + second + ",(前面是first,后一个是second)" + ":平了");
} else if (firstcharAt(1) == secondcharAt(0)) {
Systemoutprintln("出拳情况:" + first + "--" + second + ",(前面是first,后一个是second)" + "\n结果判断:" + result1(first,second));
} else if (firstcharAt(0) == secondcharAt(1)) {
Systemoutprintln("出拳情况:" + first + "--" + second + ",(前面是first,后一个是second)" + "\n结果判断:" + result2(first,second));
}
}
public static String result1 (String f, String s) {
if (fequals("12") && sequals("23")) {
return "first石头 胜 second剪子";
} else if (fequals("23") && sequals("31")) {
return "first剪子 胜 second布";
} else {
return "first布 胜 second石头";
}
}
public static String result2 (String f, String s) {
if (fequals("12") && sequals("31")) {
return "first石头 输 second布";
} else if (fequals("23") && sequals("12")) {
return "first剪子 输 second石头";
} else {
return "first布 输 second剪子";
}
}
}
JAVA是一种平台,也是一种程序设计语言,如何学好程序设计不仅仅适用于JAVA,对C++等其他程序设计语言也一样管用。有编程高手认为,JAVA也好C也好没什么分别,拿来就用。为什么他们能达到如此境界我想是因为编程语言之间有共通之处,领会了编程的精髓,自然能够做到一通百通。如何学习程序设计理所当然也有许多共通的地方。
1、培养兴趣
兴趣是能够让你坚持下去的动力。如果只是把写程序作为谋生的手段的话,你会活的很累,也太对不起自己了。
2、慎选程序设计语言
男怕入错行,女怕嫁错郎。初学者选择程序设计语言需要谨慎对待。软件开发不仅仅是掌握一门编程语言了事,它还需要其他很多方面的背景知识。软件开发也不仅仅局限于某几个领域,而是已经渗透到了各行各业几乎每一个角落。
3、要脚踏实地,快餐式的学习不可取
软件开发是一门工程学科,注重的就是实践,“君子动口不动手”对软件开发人员来讲根本就是错误的,他们提倡“动手至上”,但别害怕,他们大多温文尔雅,没有暴力倾向,虽然有时候蓬头垢面的一副“比尔盖茨”样。我们在看书的时候,不要等到你完全理解了才动手敲代码,而是应该在看书的同时敲代码,程序运行的各种情况可以让你更快更牢固的掌握知识点。
4、多参考程序代码
程序代码是软件开发最重要的成果之一,其中渗透了程序员的思想与灵魂。许多人被《仙剑奇侠传》中凄美的爱情故事感动,悲剧的结局更有一种缺憾美。为什么要以悲剧结尾据说是因为写《仙剑奇侠传》的程序员失恋而安排了这样的结局,他把自己的感觉融入到游戏中,却让众多的仙剑迷扼腕叹息。
参考代码例子,也可以研究一些开源的软件或框架。
5、加强英文阅读能力
对学习编程来说,不要求英语,但不能一点不会,。最起码像JAVAAPI文档(参考文献[44])这些东西还是要能看懂的,连猜带懵都可以;旁边再开启一个“金山词霸”。
6、万不得已才请教别人
要知道独立思考的能力对你很重要。要知道程序员的时间是很宝贵的。
7、使用合适的工具
工欲善其事必先利其器。软件开发包含各种各样的活动,需求收集分析、建立用例模型、建立分析设计模型、编程实现、调试程序、自动化测试、持续集成等等,没有工具帮忙可以说是寸步难行。工具可以提高开发效率,使软件的质量更高BUG更少。组合称手的武器。昌平计算机学校认为到飞花摘叶皆可伤人的境界就很高了,无招胜有招,手中无剑心中有剑这样的境界几乎不可企及。
学习java编程必须下载一个jdk,这个是开发java语言的sun公司提供的java编程环境,没有这个环境无法编写和运行java程序,当然也就无法学习了。
Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。由James Gosling和同事们共同研发,并在1995年正式推出。Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。1995年更名为Java,并重新设计用于开发Internet应用程序。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet。另一方面,Java技术也不断更新。Java自面世后就非常流行,发展迅速,对C++语言形成有力冲击。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。2010年Oracle公司收购Sun Microsystems
1 用2维数组表示77方格
2随机选取3个连续的cell作为一个游戏公司, 重复三次, 确保不重复,不重叠
(把这些cell的坐标用数组ary全部记录起来)
3读取命令行输入 如A3 然后判断这个cell
if(ary中存在A3&&A3以前没有输入过){
那么返回 hit
}
if(ary中存在A3&&A3以前输入过){
那么返回 sunk
}
if(ary不存在A3){
那么返回 miss;
}
4获得步骤3所输入的次数,如果次数越少,分数越高
/
游戏开始,从天上掉下10个有标号(字母)的炸d,
下面有10颗子d(就是可以按10个字母)
如果所按字母包含在炸d中,就找到相应的炸d并
消灭它,消灭后返回继续利用如果没有就一直飞到天上最后才返回
/
import javanet;
import javaawt;
import javaawtevent;
import javaapplet;
import javaxswing;
public class paodan extends Applet implements Runnable,KeyListener
{
private Image bgImage;
private Graphics bg;
static Thread myThread;
static AudioClip ac1,ac2;
static JFrame md;
String Zi26="";
String pd[]={"a","a","a","a","a","a","a","a","a","a"}; //用来存储10个字母做落下的炮d
String fj[]={"","","","","","","","","",""}; //用来存储10个字母做反击的防空
int x[]=new int[10];
int y[]=new int[10];
//炸d的坐标
int x1[]=new int[10];
int x2[]=new int[10];
int y1[]=new int[10];
//火箭的坐标
int life=100; //生命
Toolkit KIT=thisgetToolkit();
Image paodan=KITcreateImage("paodanjpg");
Image huojian=KITcreateImage("huojianjpg");
public paodan() //用来生成一个包含26个英文字母的字符串Zi26
{for (int i=0;i<26;i++)
Zi26+=(char)((int)'A'+i);
}
public void cushi() //初始各种数据,如炮d与火箭的坐标
{
try
{URL u1=thisgetClass()getResource("huishouwav");
URL u2=thisgetClass()getResource("lanjiewav");
ac1=AppletnewAudioClip(u1);
ac2=AppletnewAudioClip(u2);
}catch(Exception e){}
for (int i=0;i<10;i++)
{pd[i]=noRepeat();
x[i]=noHit(i,10);
if (i>=5)
y[i]=5+(int)(Mathrandom()50);
else
y[i]=60+(int)(Mathrandom()50);
x1[i]=220+i32+1; y1[i]=550;
x2[i]=x1[i];
}
}
public void panduan() //用来判断pd[i]的y值是否要到达屏幕下边,如果是就把Y值变为5,并把所有Y值加3
{ for(int i=0;i<10;i++)
{ if (y[i]>=500)
{life--;ac1play();y[i]=5;}
y[i]+=3;
if (life==0) Systemexit(0);
}
y[9]+=3;
mdsetTitle("打字训练室 你的生命为"+life+" 提示:白色的字母表示未按,粉红色的表示已按");
}
public void fk() //防空程序,用来击毁落下的炸d
{ int i=0,j=0;
for (i=0;i<10;i++)
{ if (!fj[i]equals(""))
{
for (j=0;j<10;j++)
if (fj[i]equals(pd[j]))
{ if (!(x1[i]>=x[j] && x1[i]<=x[j]+32 || x1[i]+32>=x[j] && x1[i]+32<=x[j]+32))
if (x1[i]>x[j])
x1[i]-=4;
else x1[i]+=4;
if (!(y1[i]>=y[j] && y1[i]<=y[j]+32 || y1[i]+32>=y[j] && y1[i]+32<=y[j]+32))
if (y1[i]>y[j])
y1[i]-=3;
else y1[i]+=4;
if (y[j]>=380 && Mathabs(x[j]-x1[i])>5)
if (x[j]>x1[i]) x1[i]+=5;
else if (x[j]<x1[i]) x1[i]-=5;
if (y[j]>=380 && Mathabs(y[j]-y1[i])>5)
if (y[j]>y1[i]) y1[i]+=5;
else if (y[j]<y1[i]) y1[i]-=5;
if ((x1[i]>=x[j] && x1[i]<=x[j]+32 || x1[i]+32>=x[j] && x1[i]+32<=x[j]+32) && (y1[i]>=y[j] && y1[i]<=y[j]+32 || y1[i]+32>=y[j] && y1[i]+32<=y[j]+32))
{life++;ac2play();pd[j]=noRepeat(); x[j]=noHit(i,10); y[j]=5; x1[i]=x2[i];y1[i]=550;fj[i]="";}
break;
}
if (j==10) y1[i]-=3;
if (y1[i]<=5) {y1[i]=550; fj[i]="";}
}
}
}
public void paint(Graphics g)
//根据相应的坐标在屏幕上画炸d和吃炸d的娃娃,并保证白色的字母表示未按,粉红色的表示已按
{int i=0,j=0;
gsetFont(new Font("Vrinda",1,21));
for(;i<pdlength;i++)
{ for (j=0;j<fjlength;j++)
if (pd[i]equals(fj[j]))
{gsetColor(new Color(255,93,55));
gdrawImage(paodan,x[i],y[i],this);
gdrawString(pd[i],x[i]+11,y[i]+20);
break;
}
if (j==fjlength)
{gsetColor(new Color(255,255,255));
gdrawImage(paodan,x[i],y[i],this);
gdrawString(pd[i],x[i]+11,y[i]+20);
}
gsetColor(new Color(255,93,55));
gdrawImage(huojian,x1[i],y1[i],this);
gdrawString(fj[i],x1[i]+10,y1[i]+22);
}
}
//没有按的显红色,按了的显白色
public void keyPressed(KeyEvent k) //当用户按的是字母时,就生成一个防空字母
{char z=kgetKeyChar();
int i=0,j=0;
if ((z>='A' && z<='Z') || (z>='a' && z<='z'))
{ if (z-32>=65) z-=32;
String zc=""+z;
for(;i<fjlength;i++)
{ if (zcequals(fj[i])) break;
} //保证字母不重复
if (i==fjlength)
for(i=0;i<fjlength;i++)
if (fj[i]equals("")) {fj[i]=zc;break;}
}
}
public void keyReleased(KeyEvent k){}
public void keyTyped(KeyEvent k){}
public String noRepeat() //生成一个不重复的字母
{int zc,i;
String xinx;
while(true)
{zc=(int)(Mathrandom()26);
xinx=Zi26substring(zc,zc+1);
for(i=0;i<10;i++)
if (pd[i]equals(xinx)) break;
if(i==10) return xinx;
}
}
int noHit(int i,int langth) //让字母保持车距
{int tmpX,j,k,width=32;
while (true)
{ tmpX=(int)(Mathrandom()768)+1;
for(j=0;j<10;j++)
{ if (tmpX+width<x[j] || tmpX>x[j]+width) continue; //如果欲生成的位置不与当前J所占的位置相交就判断下一个J
if ((tmpX>=x[j] && tmpX<=x[j]+width) || (tmpX+width>=x[j] && tmpX+width<=x[j]+width)) break;
//如果欲生成的位置与当前x[j]所占据的范围相交就结束循环,重新生成一个起始位置
}
if (j==10) {return tmpX;}
}
}
public void update(Graphics g)
{if (bgImage==null)
{bgImage=createImage(thisgetSize()width,thisgetSize()height);
bg=bgImagegetGraphics();
}
bgsetColor(getBackground());
bgfillRect(0,0,thisgetSize()width,thisgetSize()height);
//bgsetColor(getForeground());
paint(bg);
gdrawImage(bgImage,0,0,this);
}
public void run() //用线程循环更改Y值,并根据新的坐标在屏幕上重画pd[I];
{
while(true)
{fk();
panduan();
repaint();
try{ myThreadsleep(50); }catch(Exception e) {}
}
}
public static void main(String args[])
{paodan m=new paodan();
md=new JFrame("打字训练室");
mdsetSize(800,600);
mdaddKeyListener(m);
mdgetContentPane()add(m);
mcushi();
mdsetVisible(true);
mdsetResizable(false);
myThread=new Thread(m);
myThreadstart();
}
}
注:源代码取自编程中国
本人一点建议:其实你这样学Java是没用的,你应该知道你做的项目思想,先做什么后做什么,然后在亲自动手去敲代码!一点建议!
以上就是关于java编程:实现一个玩游戏并晋级的编程(用户玩游戏,每次玩5局,每次玩游戏不足5局则不能晋级.全部的内容,包括:java编程:实现一个玩游戏并晋级的编程(用户玩游戏,每次玩5局,每次玩游戏不足5局则不能晋级.、急求一个JAVA编程,“编写一个猜拳游戏,分别用0、1、2表示石头、剪子、布。、昌平计算机学校分享如何学习java程序设计等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)