小型项目:控制台计算器
不使用控制台输入,使用 switch 构建一个小型计算器函数。处理 +、-、*、/,验证除数是否为零,并设计清晰的测试。
小型项目:控制台计算器 是 CoddyKit 上的免费 Java Academy 课时。 这是第 3 节课,共 3 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Java Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Java Academy 课程共包含 3 节课。
项目简介
目标:实现一个不使用控制台输入的可复用计算器方法。该方法接收两个数字和一个运算符,返回结果,并验证除数是否为零。
应用程序接口设计
应用程序接口
static double calc(double a, double b, char op)- 运算符:
'+'、'-'、'*'/'x'、'/' - 无效运算符:抛出
IllegalArgumentException - 方法内部不得读取用户输入
分支选择逻辑
分支选择逻辑
- 将乘法标签归为一组:
*、x、X - 对未知运算符使用
default - 每个分支都返回一个结果
除以零
除以零
- 当
op == '/'时检查b == 0 - 抛出
IllegalArgumentException("Division by zero") - 对于初学者,不要依赖 IEEE 的无穷大值
测试计划
测试
- 正常路径:
calc(7, 8, '+')、calc(9, 3, '/') - 边界情况:
calc(5, 0, '/')应该抛出异常 - 无效运算符:
calc(1, 2, '?')应该抛出异常
计算器演示
运行:演示会直接使用示例值调用 calc 并打印结果。不需要控制台输入。
public class Main {
static double calc(double a, double b, char op) {
switch (op) {
case '+':
return a + b;
case '-':
return a - b;
case '*':
case 'x':
case 'X':
return a * b;
case '/':
if (b == 0) throw new IllegalArgumentException("Division by zero");
return a / b;
default:
throw new IllegalArgumentException("Unknown operator: " + op);
}
}
public static void main(String[] args) {
System.out.println("7 + 8 = " + calc(7, 8, '+'));
System.out.println("10 / 2 = " + calc(10, 2, '/'));
try {
System.out.println("10 / 0 = " + calc(10, 0, '/'));
} catch (IllegalArgumentException e) {
System.out.println("Error: " + e.getMessage());
}
System.out.println("6 * 3 = " + calc(6, 3, '*'));
System.out.println("6 x 3 = " + calc(6, 3, 'x'));
}
}
除以零策略
快速检查:对于 calc(10, 0, '/' ),应该发生什么?
回顾与下一步
回顾:您设计了清晰的应用程序接口,实现了基于分支选择语句的计算器,验证了除以零的情况,并且在完全不使用控制台输入的情况下完成了测试。
下一步:继续学习循环,以处理重复计算和模式。
常见问题解答
「小型项目:控制台计算器」课时是免费的吗?
是的 — 「小型项目:控制台计算器」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Java Academy 课程的其余内容,请升级到 CoddyKit PRO。 Java Academy 课程共包含 3 节课。
「小型项目:控制台计算器」这节课中我会学到什么?
不使用控制台输入,使用 switch 构建一个小型计算器函数。处理 +、-、*、/,验证除数是否为零,并设计清晰的测试。 你通过在浏览器中直接运行的动手代码来练习 Java Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Java Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Java Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 3 节。
「小型项目:控制台计算器」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Java Academy 课中编写并运行代码吗?
能。每节 Java Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 深入理解比较运算符与逻辑运算符
- Switch 语句
- 小型项目:控制台计算器