写个功能健全的猜数字游戏:
package com.yoyo.yotils.yoyo.amuse;
import java.util.Scanner;
/**
* 猜数游戏
* @author yoyo
* @version $Id: GuessNumber.java, v 0.1 2019年04月16日 19:00 yoyo Exp $
*/
public class GuessNumber {
static final String LOW = "太小啦!继续猜:";
static final String HIGH = "太大啦!继续猜:";
static final String EQS = "猜对啦!你大脑袋太聪明了!";
/**
* 比较
* @param num
* @param gusNum
* @return
*/
int compare(int num, int gusNum){
int gusRes;
if(gusNum > num){
gusRes = 1;
System.out.println(HIGH);
} else if(gusNum < num){
gusRes = -1;
System.out.println(LOW);
} else {
gusRes = 0;
System.out.println(EQS);
}
return gusRes;
}
/**
* 游戏主体
*/
void game(){
System.out.println("我是个机器人,我脑袋里想了个1-100内的数字,你猜猜是啥?");
boolean play = true;
while(play){
System.out.println("你猜:");
int num = (int)(Math.random() * 100);
try {
Scanner scanner = new Scanner(System.in);
while (true){
String gusNumStr = scanner.nextLine();
int gusNum = Integer.parseInt(gusNumStr);
if(compare(num, gusNum) == 0){
break;
}
}
System.out.println("再玩一次?yes/no");
while (true){
String again = scanner.nextLine();
if("no".equals(again)){
play = false;
break;
}else if("yes".equals(again)){
break;
}else{
System.out.println("请输入yes/no");
}
}
} catch (Exception e) {
System.out.println("你输入的不是数字哦!!!\n");
}
}
}
public static void main(String[] args) {
new GuessNumber().game();
}
}
运行结果: