大概流程为:
程序进来走main方法
分别调用并执行三个方法
public class Game {
public static void main(String[] args) {
//1:打印欢迎信息
printWelcome();
//2:生成幸运数字
int luckyNum = luckNumber(100);
//System.out.println(luckyNum);
//3:开始猜幸运数字
guessNumber(luckyNum);
}
(1)显示控制台欢迎信息
public static void printWelcome() {
System.out.println("~~~~~~~~~~猜数字游戏~~~~~~~~~~");
System.out.println("幸运数字为0~100之间且不包含100的整数");
System.out.println("请输入并猜到这个幸运数字,直到猜中位置,中途退出请输入 exit");
}
(2)生成幸运数字
public static int luckNumber(int bound){
return new Random().nextInt(bound);
}
(3)猜数字
public static void guessNumber(int luckyNumber) {
System.out.print("请输入 》》》");
Scanner scanner = new Scanner(System.in);
// 获取控制台录入
String inputString = scanner.next();
if("exit".equalsIgnoreCase(inputString)) {
System.out.println("您已退出游戏,欢迎下次再来!!!");
// 重新调用开始菜单
// 直接退出程序
System.exit(0);
}
// 字符串转成数字
int inputNumer = Integer.parseInt(inputString);
if(inputNumer > luckyNumber) {
System.out.println("您猜的数字比幸运数字大");
// 递归调用 (没猜中不退出继续猜)
guessNumber(luckyNumber);
}else if(inputNumer < luckyNumber) {
System.out.println("您猜的数字比幸运数字小");
// 递归调用
guessNumber(luckyNumber);
}else
System.out.println("恭喜你猜中了幸运数字 》》》 " + luckyNumber);
System.out.println("您已退出游戏,欢迎下次再来!!!");
System.exit(0);
}
}