游戏说明
打开游戏提示开始游戏,还是结束游戏
开始游戏后会有计时功能,同时还有计分功能
下面来看代码分析
首先创建一个类,用来计时用的,代码如下
先定义三个变量,初始化时分秒[Java] 纯文本查看 复制代码 private int hour; //小时
private int seconds;//秒
private int minutes;//分钟

因为是线程,我们就继承Thread类来实现[Java] 纯文本查看 复制代码public class threaddemo extends Thread

并且我们需要重写run方法[Java] 纯文本查看 复制代码 @Override
public void run() {
super.run();

}

然后在run方法里面写计时代码,同时需要休眠1s,保证计时与正常的一样
[Java] 纯文本查看 复制代码 for (;;){
for (hour=0;hour<24;hour++){
for (minutes=0;minutes<60;minutes++){
for(seconds=0;seconds<60;seconds++){
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}

然后我们还需要写获取时分秒的代码,[Java] 纯文本查看 复制代码 //获取小时
public int getHour() {
return hour;
}
//获取分钟
public int getMinutes() {
return minutes;
}
//获取秒
public int getSeconds() {
return seconds;
}

实现猜数字的代码如下,打开游戏提示开始游戏,还是结束游戏输入1就开始游戏,输入2就是结束游戏,[Java] 纯文本查看 复制代码System.out.println("欢迎来到猜数字游戏");
System.out.println("输入1开始游戏,输入2结束游戏");
//创建一个接收输入数据的对象
Scanner sc=new Scanner(System.in);
int sca=sc.nextInt();
switch (sca){

case 1:playgame();
break;
case 2:System.exit(0);
break;
}
}

然后是开始游戏后的代码实现,先要创建一个计时的对象,以实现计时功能,[Java] 纯文本查看 复制代码System.out.println("开始游戏啦");
System.out.println("输入222是结束游戏哦");
System.out.println("");
//创建计时类的对象
threaddemo th=new threaddemo();
th.start();

然后还要创建一个置随机数对象,并且接受随机数[Java] 纯文本查看 复制代码 //置随机数
Random r=new Random();
//接收随机数
int ra=r.nextInt(100)+1;

然后还要接收用户的输入的数据,并且判断大于随机数还是小于随机数或者等于随机数,[Java] 纯文本查看 复制代码 Scanner sc = new Scanner(System.in);
int sca = sc.nextInt();
int aaa = sca;
if (sca > 0 && sca > ra && sca < 100) {
System.out.println("你猜大了");
} else if (sca > 0 && sca < ra && sca < 100) {
System.out.println("你猜小了");
} else if (sca > 0 && sca == ra && sca < 100) {
System.out.println("恭喜你,猜对了");

猜对之后就得分加1,还要判断是否继续游戏,继续就再次回到原处,执行playgame方法,如果结束游戏就显示你的得分,并且显示游戏的总时长,下面是得分变量的定义[Java] 纯文本查看 复制代码private static int scores=0;

下面是判断是否继续游戏或者结束游戏,并且显示得分,还有游戏的总时长,还要有一个判断,判断输入的数字是小于还是大于随机数的范围,[Java] 纯文本查看 复制代码 System.out.println("输入1为继续");
System.out.println("输入222为结束游戏");
//创建一个输入数据的对象,判断是否继续
Scanner scc = new Scanner(System.in);
int scca = scc.nextInt();
switch (scca) {
case 1:
playgame();
break;
case 222:
System.out.println("您的游戏时间是:" + th.getHour() + "小时" + th.getMinutes() + "分钟" + th.getSeconds() + "秒");
System.out.println("您的游戏得分为:" + scores);
System.exit(0);
break;
}
} else if (aaa == 222 && aaa > 100) {
System.out.println("您的游戏时间是:" + th.getHour() + "小时" + th.getMinutes() + "分钟" + th.getSeconds() + "秒");
System.out.println("您的游戏得分为:" + scores);
System.exit(0);

} else if (aaa < 100 || aaa > 100) {
System.out.println("你输入的数字有误");
}

猜对后还要加分[Java] 纯文本查看 复制代码scores++;

全代码如下,计时类[Java] 纯文本查看 复制代码public class threaddemo extends Thread{
private int hour; //小时
private int seconds;//秒
private int minutes;//分钟

//计时方法
@Override
public void run() {
for (;;){
for (hour=0;hour<24;hour++){
for (minutes=0;minutes<60;minutes++){
for(seconds=0;seconds<60;seconds++){
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}}

//获取小时
public int getHour() {
return hour;
}
//获取分钟
public int getMinutes() {
return minutes;
}
//获取秒
public int getSeconds() {
return seconds;
}
}

测试类:[Java] 纯文本查看 复制代码
import java.util.Random;
import java.util.Scanner;

public class main {
private static int scores=0;
public static void main(String[] args) {
System.out.println("欢迎来到猜数字游戏");
System.out.println("输入1开始游戏,输入2结束游戏");
//创建一个接收输入数据的对象
Scanner sc=new Scanner(System.in);
int sca=sc.nextInt();
switch (sca){

case 1:playgame();
break;
case 2:System.exit(0);
break;
}
}

public static void playgame() {
System.out.println("开始游戏啦");
System.out.println("输入222是结束游戏哦");
System.out.println("");
//创建计时类的对象
threaddemo th=new threaddemo();
th.start();
//置随机数
Random r=new Random();
int ra=r.nextInt(100)+1;
//创建一个输入数据的对象
while (true) {
Scanner sc = new Scanner(System.in);
int sca = sc.nextInt();
int aaa = sca;
if (sca > 0 && sca > ra && sca < 100) {
System.out.println("你猜大了");
} else if (sca > 0 && sca < ra && sca < 100) {
System.out.println("你猜小了");
} else if (sca > 0 && sca == ra && sca < 100) {
System.out.println("恭喜你,猜对了");
scores++;
System.out.println("输入1为继续");
System.out.println("输入222为结束游戏");
//创建一个输入数据的对象,判断是否继续
Scanner scc = new Scanner(System.in);
int scca = scc.nextInt();
switch (scca) {
case 1:
playgame();
break;
case 222:
System.out.println("您的游戏时间是:" + th.getHour() + "小时" + th.getMinutes() + "分钟" + th.getSeconds() + "秒");
System.out.println("您的游戏得分为:" + scores);
System.exit(0);
break;
}
} else if (aaa == 222 && aaa > 100) {
System.out.println("您的游戏时间是:" + th.getHour() + "小时" + th.getMinutes() + "分钟" + th.getSeconds() + "秒");
System.out.println("您的游戏得分为:" + scores);
System.exit(0);

} else if (aaa < 100 || aaa > 100) {
System.out.println("你输入的数字有误");
}
}

}
}

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源