javabean+jsp實現計算器
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <jsp:useBean id="calculater" scope="request" class="p1.calculater" />
<jsp:setProperty name="calculater" property="*" /> <form action="calculater.jsp" method="get"> <hr align="left" style="width: 400px;"> 計算結果是: <span> <% if(request.getParameter("operator") != null){ String operator = request.getParameter("operator"); int oper = Integer.parseInt(operator); if(oper == 4 && calculater.getNum2() == 0){ out.print("出錯,除數不能為零!"); }else{ %> <%=calculater.getNum1()%> <%
if(oper == 1) out.print("+"); if(oper == 2) out.print("-"); if(oper == 3) out.print("*"); if(oper == 4) out.print("/");
%> <%=calculater.getNum2()%> = <%=calculater.getResult()%> <% } } %>
</span> <!-- 表示式顯示 --> <hr align="left" style="width: 400px;"> <div align="left" style="width: 400px;"> <p align="center">簡單計算器</p> 第一個引數:<input type="text" name="num1" /><br> <div style="padding-left: 100px;"> <select name="operator"> <option value="1">+</option> <option value="2">-</option> <option value="3">*</option> <option value="4">/</option> </select> </div> 第二個引數:<input type="text" name="num2" /><br> <input type="submit" value="計算" style="margin-left: 100px;" /> </div> </form>
</body> </html>
2.
package p1;
public class calculater { private float num1; // 引數1 private int operator; // 運算子 private float num2; // 引數2 private float result; // 運算結果
public calculater() { super(); }
public float getNum1() { return num1; }
public void setNum1(float num1) { this.num1 = num1; }
public int getOperator() { return operator; }
public void setOperator(int operator) { this.operator = operator; }
public float getNum2() { return num2; }
public void setNum2(float num2) { this.num2 = num2; }
public float getResult() { // 計算式的運算結果 float result1 = 0; try { switch (operator) { case 1: result1 = num1 + num2; break; case 2: result1 = num1 - num2; break; case 3: result1 = num1 * num2; break; case 4: result1 = num1 / num2; break; default: break; } } catch (Exception e) { e.getMessage(); }
return result1; }
}