猜数字小游戏用Random生成1–100目标数,do-while循环实现至少一次猜测,Scanner读取输入并校验,if-else判断大小关系,计数并提示结果。

猜数字小游戏是 Java 流程控制的典型实践,核心在于用 if-else 分支判断大小关系,用 while 或 do-while 循环控制重复猜测,再配合 Scanner 输入和 Random 生成随机数即可完成。
生成目标数字(1–100)
使用 Random 类生成一个 1 到 100 的整数作为答案:
- 导入
java.util.Random - 创建实例:
Random rand = new Random(); - 生成范围数:
int answer = rand.nextInt(100) + 1;(nextInt(100)返回 0–99,+1 后为 1–100)
循环接收并判断用户输入
用 do-while 更自然——至少猜一次,再根据结果决定是否继续:
你接手一个需求时,是不是经常这样:"改一个小字段 → 结果把不相关的代码也改了"、"需求说得很模糊 → 做着做着发现跑偏了"、"数据库加个字段 → 上线才发现漏了数据兼容"、"做了个新功能 → 一个月后自己都忘了当时怎么设计的"、"写到一半被中断 → 再回来不知道从哪继续";这个 Skill 就是专门解决这些问题的。 它会自动探测你的项目环境(JDK、Spring Boot、ORM、数据库、前端框架),记在
- 提示用户输入:
System.out.print("请输入你猜的数字(1-100):"); - 读取整数:
int guess = scanner.nextInt(); - 用
if-else if-else判断:
– 猜大了 → 输出“太大了”,继续循环
– 猜小了 → 输出“太小了”,继续循环
– 相等 → 输出“恭喜!猜对了!”,跳出循环
增强体验的小细节
让程序更友好、健壮:
立即学习“Java免费学习笔记(深入)”;
-
输入校验:用
scanner.hasNextInt()判断是否输入了整数,避免非数字导致异常;错输后调用scanner.next()清掉非法输入 - 范围提醒:如果输入不在 1–100,提示“请输入 1 到 100 之间的整数”
-
计数次数:定义
int count = 0,每次有效猜测后count++,猜中时输出“共猜了 X 次”
完整结构示意(关键逻辑)
主流程可组织为:
- 初始化 Random 和 Scanner
- 生成 answer
- 声明 count = 0
do { ... } while (guess != answer);- 循环体内:读输入 → 校验 → 范围检查 → 比较 → 计数 → 提示


















