编写一个计算器,实现加减乘除
时间: 2024-11-15 22:26:03 浏览: 1
好的,首先我们需要创建一个名为Calculator的类,其中包含四个静态方法代表加、减、乘、除操作。这是一个基本的示例:
```java
import java.util.Scanner;
public class Calculator {
/**
* 加法方法
* @param a 第一个数
* @param b 第二个数
* @return a和b的和
*/
public static int add(int a, int b) {
return a + b;
}
/**
* 减法方法
* @param a 被减数
* @param b 减数
* @return a和b的差
*/
public static int subtract(int a, int b) {
return a - b;
}
/**
* 乘法方法
* @param a 第一个数
* @param b 第二个数
* @return a和b的积
*/
public static int multiply(int a, int b) {
return a * b;
}
/**
* 除法方法,处理除数为零的情况
* @param a 被除数
* @param b 除数
* @return 如果除数不为零,返回商;否则抛出DivideByZeroException异常
* @throws DivideByZeroException 当除数为零时抛出异常
*/
public static double divide(int a, int b) throws DivideByZeroException {
if (b == 0) {
throw new DivideByZeroException("除数不能为零!");
}
return (double) a / b;
}
// 以下是主函数,用于获取用户输入并进行计算
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入您要进行的操作(+、-、*、/),然后分别输入两个整数:");
try {
String operator = scanner.next();
int num1 = scanner.nextInt();
int num2 = scanner.nextInt();
switch (operator) {
case "+":
System.out.println("结果: " + add(num1, num2));
break;
case "-":
System.out.println("结果: " + subtract(num1, num2));
break;
case "*":
System.out.println("结果: " + multiply(num1, num2));
break;
case "/":
System.out.println("结果: " + divide(num1, num2)); // 注意:这里会捕获并处理DivideByZeroException
break;
default:
System.out.println("无效的操作符,请重新输入。");
break;
}
} catch (Exception e) {
System.out.println("发生错误:" + e.getMessage());
} finally {
scanner.close();
}
}
}
// 自定义异常
class DivideByZeroException extends RuntimeException {
public DivideByZeroException(String message) {
super(message);
}
}
```
在这个计算器中,用户可以选择四种基本运算,如果输入的除数为零,则会抛出自定义的`DivideByZeroException`异常,并在`main`函数的`catch`块中捕获并处理这个异常。
阅读全文