今天要做一个规定时间猜数字的游戏,虽然很简单但是JAVA里生成随机数和计时的方式有点奇怪这点稍稍让我有些头疼
代码如下:
package test; import java.util.Scanner; import java.util.Random; public class Class10 { public static void main(String[] args) { int c=0,time=10,think=0; String sp; Random random = new Random(); Scanner input=new Scanner(System.in); for(int i=1;i!=0;) { c=random.nextInt(1000); System.out.print("随机数范围为0~1000 请给自己一个时间限制(单位为秒) "); time=input.nextInt(); long startTime = System.currentTimeMillis(); for(;;) { think=input.nextInt(); long endTime = System.currentTimeMillis(); long thinkt= (endTime-startTime)/1000; if(thinkt<=time){ if(think>c){ System.out.print("多了 "); } else if(think<c){ System.out.print("少了 "); } else{ System.out.print("恭喜!正确猜出数字 "); break; } } else{ System.out.print("很遗憾,未能在规定时间内猜出正确数字,该数字为"+c+" "); break; } } System.out.print("想再来一次吗?Y/N "); sp=input.next(); if(sp=="N") { System.out.print("感谢您的游玩 "); i=0; } } } }
运行结果如下:
(这玩意根本猜不对吧)