java猜数字游戏核心是random生成1–100随机数,用while循环+scanner接收输入,try-catch处理异常,根据大小关系给出“太小了”“太大了”提示,猜中时输出恭喜并结束,可记录猜测次数。

Java 中实现猜数字小游戏,核心是用 Random 生成随机数,再用 循环(如 while) 控制多次猜测,配合条件判断反馈提示。下面分步骤讲清楚关键点和实用写法。
生成 1 到 100 的随机目标数
用 java.util.Random 更直观,也兼容老版本;Math.random() 也能用但需手动换算:
- 推荐写法:Random r = new Random(); int target = r.nextInt(100) + 1;(
nextInt(100)返回 0–99,+1 得到 1–100) - 避免常见错误:
r.nextInt(1, 101)是 Java 17+ 的新方法,旧版本不支持,初学建议用传统方式
用 while 循环持续接收用户输入
循环不预设次数,直到猜中才退出。需搭配 Scanner 读取输入,并处理非数字输入异常:
- 声明 Scanner sc = new Scanner(System.in);
- 循环条件设为 while (true) { ... if (guess == target) break; }
- 加 try-catch 捕获
InputMismatchException,提示“请输入有效数字”,并用sc.next()清掉错误输入,防止死循环
每次猜完给出明确提示
不是只说“错了”,而是告诉用户方向,提升交互感:
- 猜小了 → 输出 “太小了,再试试!”
- 猜大了 → 输出 “太大了,再试试!”
- 猜中 → 输出 “恭喜!你猜对了!”,然后
break结束循环 - 可选增强:记录猜测次数,结束时显示“你用了 X 次”
完整结构示例(精简可运行版)
把上面逻辑串起来,主流程清晰不冗余:
- 导入必要类:
import java.util.*; - main 方法内依次:创建 Random 和 Scanner、生成 target、定义 guess 变量、进入 while 循环
- 循环体内先提示输入,再 try 读整数,再比较并输出对应提示
- 别忘了在 finally 或 catch 后加
sc.close();释放资源
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











