我在jsp页面中调用javabean,传了一个变量过去.
arrayCondition[1]="1";
为何程序总是执行else那段呢?
为何它判断不了?
if (arrayCondition[1].length()>=1){
//工作地点
if (strSql != ""){
strSql+=" and ";
}else{
strSql=" where ";
}
if (arrayCondition[1]=="1"){
strSql+=" workLocation in (0,2) ";
}else if (arrayCondition[1]=="2"){
strSql+=" workLocation<=22 and workLocation<>2 ";
}else if (arrayCondition[1]=="3"){
strSql+=" workLocation>22 ";
}else{
//为何程序总是执行这一段呢?
}
}
跟踪一下arrayCondition[1]是否为null
你传递参数的方法是否正确?把相关语句贴出来吧
你可以试着在javabean中把参数的值打印出来看看
arrayCondition[1]=="1"
改为这样就可以了:arrayCondition[1].equals("1")
字符串是对象,JAVA中对 arrayCondition[1]=="1" 判断的是这左右两边的对象是否相等,而不是判断其字符串的值是否相等,所以判断结果是不等,所以就总到else里面了。:)
GOOD LUCK!
你先设法看一看数组一号单元中究竟传出来的什么数。