jsp中字符串相等的判断

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsp中字符串相等的判断相关的知识,希望对你有一定的参考价值。

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>

</head>
<body>
<script>
function sbmt(name)
if (name=="b1")
document.f1.t.value="1";
f1.submit();

else if(name=="b2")
document.f1.t.value="2";
f1.submit();


</script>
<form id="f1" name="f1" method="post" action="">
<label></label>
<label>
<input type="submit" name="b1" value="forward1" onclick="sbmt('b1');" />
</label>
<label>
<input type="submit" name="b2" value="forward2" onclick="sbmt('b2');" />
</label>
</p>
<label>
<input type="hidden" name="t" value="0" />
</label>
</form>
<%
String a=request.getParameter("t");
out.println(a);
if(a=="0")
out.print("000");
out.print("111");

else

if(a=="1")
%>
<jsp:forward page="forward1.jsp">
<jsp:param name="f" value="forward1" />
</jsp:forward>
<%

else if(a=="2")
%>
<jsp:forward page="forward2.jsp">
<jsp:param name="f" value="forward2" />
</jsp:forward>
<%


out.println("aaaaaaaaaaaa");
out.println(a);
%>
</body>
</html>

运行面时
点击b1 按钮 输出a的值为1,点击按钮b2时输出a的值为2,可是if(a=="1")和if(a=="2")里面都没执行到,不知道哪里出问题?字符串相等的判断应该没错。。请大家帮帮忙咯~~在此谢谢了。。
用equals或compareTo都不行咯,出现如下错误:
org.apache.jasper.JasperException: An exception occurred processing JSP page /forward.jsp at line 39

36: <%
37: String a=request.getParameter("t");
38: out.println(a);
39: if(a.equals("0"))
40: out.print("000");
41: out.print("111");
42:

在小脚本中,字符串判断用的是Java判断方式,调用.equals方法,比如判断a等不等于“123”,方法为if(a.equals("123"))。

如果是在javascript中,用的是js的判断,直接使用==就可以了。

扩展资料:

JSP标签

<c:out >用于在JSP中显示数据,就像<%= ... >    

<c:set >用于保存数据    

<c:remove >用于删除数据    

<c:catch>用来处理产生错误的异常状况,并且将错误信息储存起来

<c:if>与我们在一般程序中用的if一样

<c:import>检索一个绝对或相对 URL,然后将其内容暴露给页面    

<c:forEach >基础迭代标签,接受多种集合类型    

参考资料来源:百度百科-JSP (java服务器页面)

参考技术A 在小脚本中,字符串判断用的是Java判断方式,调用.equals方法,比如判断a等不等于“123”,方法为if(a.equals("123"))。如果是在javascript中,用的是js的判断,直接使用==就可以了 参考技术B LS正解,Java里面判断字符串相等与否是通过字符串的equals方法的,你把a=="2"全部改成a.equals("2")就正常了。

a是null?你从request.getParameter("t")获取的a可能是null的,这样就有可能导致异常,你在a.equals("0")之前试一下加上这句if(a==null)return;本回答被提问者采纳
参考技术C if(a=="1")和if(a=="2")都是java程序片里的代码,应该用一楼的方法,都改为
if(a.equals("1")和if(a.equals("2")
参考技术D String.equals()方法用来比较字符串相等。
int类型可以用==来比较相等

java 判断字符串是否相等

判断字符串相等我们经常习惯性的写上if(str1==str2),这种写法在Java中可能会带来问题。

java中判断字符串是否相等有两种方法:

1、用“==”运算符,该运算符表示指向字符串的引用是否相同,比如: String a="abc";String b="abc",

那么a==b将返回true。这是因为在java中字符串的值是不可改变的,相同的字符串在内存中只会存

一份,所以a和b指向的是同一个对象;再比如:String a=new String("abc"); String b=new String("abc");

那么a==b将返回false,因为a和b指向不同的对象。

2、用equals方法,该方法比较的是字符串的内容是否相同,比如:String a=new String("abc"); 

String b=new String("abc"); a.equals(b);将返回true。所以通常情况下,为了避免出现上述问题,判断

字符串是否相等使用equals方法。

以上是关于jsp中字符串相等的判断的主要内容,如果未能解决你的问题,请参考以下文章

JSP脚本判断两字符串相等的问题

jsp 判断字符串相等

java中如何判断两个变量相等

java 判断字符串是不是相等

JSP页面中比较字符串

java比较两字符串是不是相等。。。