jsp的问题求助

来源:百度知道 编辑:UC知道 时间:2024/05/30 13:48:33
一个四则运算的页面
HTML+JSP+JAVABEAN 型
输入两个数字和运算符号
即得运算结果
但是无论我输入什么 最后总是显示 0.0

文件存放的位置肯定没有问题
麻烦大家帮我看看吧
谢谢啦!

代码如下
JAVABEAN:

package ch3;
import java.io.*;
public class plus
{
public plus(){}
private String num1;
private String num2;
private double total;
private String sign;
public void setNum1(String num1)
{
this.num1=num1;
}
public String getNum1()
{
return num1;
}
public void setNum2(String num2)
{
this.num2=num2;
}
public String getNum2()
{
return num2;
}

public void setTotal(double total)
{
this.total=total;
}
public double getTotal()
{
return total;
}

public void setSign(String sign)
{
this.sign=sign;
}
public String getSign()
{
return sign;
}

public void cal()
{
double n1=Double

对,把下面代码改了就可以了。
try
{
if(sign=="+")
total=n1+n2;
else if(sign=="-")
total=n1-n2;
else if(sign=="*")
total=n1*n2;
else if(sign=="/")
total=n1/n2;
}
请改为:
try
{
if(sign.trim().equals("+"))
total=n1+n2;
else if(sign.trim().equals("-"))
total=n1-n2;
else if(sign.trim().equals("*"))
total=n1*n2;
else if(sign.trim().equals("/"))
total=n1/n2;
}
加了trim()是防止你传参过程中会多传来前后的空格。

if(sign==\"+\")
total=n1+n2;
else if(sign==\"-\")
total=n1-n2;
else if(sign==\"*\")
total=n1*n2;
else if(sign==\"/\")
total=n1/n2;
这个地方出现错误,字符串的比较用sign.sign.equalsIgnoreCase(\"+\")之类的不能用==