Java 计算器程序

2025年8月24日 | 阅读 4 分钟

Java 中的计算器程序是一个执行基本算术运算的应用程序,例如加法、减法、乘法除法

算法

步骤 1:输入第一个数字

步骤 1.1:使用 Scanner 提示用户输入第一个数字。

步骤 2:输入运算符

步骤 2.1:提示输入运算符(+、-、*、/、% 、^ 或 sqrt)。

步骤 3:检查操作类型

步骤 3.1:如果运算符是 sqrt,则使用 Math.sqrt() 计算第一个数字的平方根并显示结果。

步骤 3.2:否则,提示输入第二个数字并继续。

步骤 4:使用 switch 执行操作

步骤 4.1:使用 switch 语句匹配运算符并执行相应的操作:+、-、*、/、% 、^

步骤 4.2:对于除法,检查是否除以零。

步骤 5:错误处理

步骤 5.1:将整个输入/输出过程包装在 try-catch 块中,以处理无效输入(例如,非数字值)。

示例

编译并运行

输出

===== Calculator =====
Enter first number: 2
Enter operator (+, -, *, /, %, ^, sqrt): +
Enter second number: 2
Result = 4.0

时间复杂度:程序的 O(1) 时间复杂度。这是因为每个操作(输入、比较、算术)都以恒定时间执行。

空间复杂度:程序的 O(1) 空间复杂度。这是因为无论输入大小如何,只使用固定数量的变量。

带 GUI 的计算器程序

以下 Java 程序也执行基本算术运算。在此程序中,我们使用了 swing。

  • Swing 组件:JFrame、JTextField、JButton 和 JPanel
  • 布局管理器:BorderLayout、GridLayout
  • 事件处理:interface
  • 状态管理:存储操作数和运算符

示例

编译并运行

输出

Calculator Program in Java

计算器选择题

Q1. 下列哪个不是有效的 Java 运算符?

  1. +
  2. **
  3. %
  4. ^
 

答案: B

解释:Java 不使用 ** 表示幂运算;而是使用 Math.pow()。


Q2. 在 Java 中使用 Scanner 获取输入的正确语法是什么?

  1. Scanner input = new Scanner();
  2. Scanner input = new Scanner(System.out);
  3. Scanner input = new Scanner(System.in);
  4. Scanner input = Scanner();
 

答案:C

解释:Java 中使用 System.in 进行标准输入。


Q3. 哪个方法用于将一个数提高到另一个数的幂?

  1. Math.power()
  2. Math.exp()
  3. Math.pow()
  4. power()
 

答案:C

解释:Java 提供了 Math.pow(a, b) 来计算 a 的 b 次幂。


Q4. 使用哪个控制结构从多个代码块中选择一个来执行?

  1. if
  2. for
  3. while
  4. switch
 

答案: D

解释:switch 用于基于表达式的值进行多路分支。


Q5. 该程序的时间复杂度和空间复杂度是多少?

  1. 时间:O(n),空间:O(1)
  2. 时间:O(1),空间:O(1)
  3. 时间:O(n),空间:O(n)
  4. 时间:O(1),空间:O(n)
 

答案: B

解释:所有操作(输入、算术和条件检查)都花费恒定时间并使用固定内存。


下一个主题Java 规范名称