jsp运用try...catch的方式写出加减乘除的运算
时间: 2024-01-21 13:16:41 浏览: 126
以下是使用 try...catch 的方式实现加减乘除运算的示例代码:
```jsp
<%@ page language="java" %>
<html>
<head>
<title>Calculator</title>
</head>
<body>
<h1>Calculator</h1>
<form method="post">
<input type="text" name="num1" />
<select name="operator">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="text" name="num2" />
<input type="submit" value="Calculate" />
</form>
<%
// 获取用户输入的数字和运算符
String num1Str = request.getParameter("num1");
String operator = request.getParameter("operator");
String num2Str = request.getParameter("num2");
double num1 = 0;
double num2 = 0;
double result = 0;
try {
// 将用户输入的数字转换为 double 类型
num1 = Double.parseDouble(num1Str);
num2 = Double.parseDouble(num2Str);
// 根据运算符进行相应的计算
if (operator.equals("+")) {
result = num1 + num2;
} else if (operator.equals("-")) {
result = num1 - num2;
} else if (operator.equals("*")) {
result = num1 * num2;
} else if (operator.equals("/")) {
result = num1 / num2;
}
// 输出计算结果
out.println("<h2>" + num1 + " " + operator + " " + num2 + " = " + result + "</h2>");
} catch (NumberFormatException e) {
// 捕获异常,输出错误信息
out.println("<h2>Invalid input. Please enter valid numbers.</h2>");
} catch (ArithmeticException e) {
// 捕获异常,输出错误信息
out.println("<h2>Invalid operation. Division by zero is not allowed.</h2>");
}
%>
</body>
</html>
```
在上述代码中,我们使用了 try...catch 块来捕获可能出现的 NumberFormatException 和 ArithmeticException 异常。当用户输入的数字无法被正确转换为 double 类型时,会抛出 NumberFormatException 异常,我们在 catch 块中输出错误信息。当用户试图进行除以零的操作时,会抛出 ArithmeticException 异常,我们也在 catch 块中输出错误信息。
阅读全文