java简单计算器核心是用switch或if-else判断运算符并计算,用scanner读取输入(推荐全用nextline()再解析),需处理除零异常和非法符号,支持格式提示、输入校验与结果格式化输出。

Java 中用流程控制实现简单计算器,核心是用 if-else 或 switch 判断用户输入的运算符,再对两个操作数执行对应运算,最后输出结果。
获取用户输入的两个数字和一个运算符
使用 Scanner 从控制台读取数据。注意先读数字再读运算符(或统一用字符串读取,避免 nextLine() 和 nextInt() 混用导致换行符残留):
- 推荐方式:全部用
nextLine()读取,再用Double.parseDouble()转数字 - 运算符可直接作为字符串接收,如
"+"、"-"、"*"、"/" - 记得处理除零异常(比如判断除数是否为 0)
用 switch 判断运算符并计算
switch 更简洁清晰,适合有限且确定的运算符场景(+ − × ÷):
Java Maven 项目审查工作流的通用输入处理。当 Java Maven 项目以 ZIP压缩包或 GitLab 仓库 URL 形式提供且需要...时使用。
- 每个
case对应一种运算,执行计算并用break结束 - 加上
default处理非法符号(如输入 "%" 或 "abc") - 示例片段:
switch (operator) {
case "+": result = num1 + num2; break;
case "-": result = num1 - num2; break;
case "*": result = num1 * num2; break;
case "/":
if (num2 != 0) result = num1 / num2;
else { System.out.println("错误:除数不能为零"); }
break;
default: System.out.println("不支持的运算符:" + operator);
}
用 if-else 实现等效逻辑(兼容性更强)
如果运算符可能含空格、大小写或扩展符号(如 "mod"、"^"),if-else 更灵活:
- 用
.equals()比较字符串(别用==) - 可组合条件,例如:
if ("*".equals(op) || "×".equals(op)) - 同样需要检查除零、类型转换异常(用 try-catch 包裹
parseDouble更健壮)
完整运行与基本交互设计
一个可用的最小闭环包括:
- 提示用户输入格式,例如:“请输入第一个数、运算符、第二个数(空格分隔)”
- 读入一行后用
split("\s+")拆分成三部分 - 校验拆分后长度是否为 3,各部分是否有效
- 计算完成后打印结果,如
System.out.printf("%.2f %s %.2f = %.2f%n", num1, op, num2, result);
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










