String的equals方法问题,老是出错

wjazz 2006-08-18 10:49:13
我在编写JSP文档的时候,用到了验证码,当我在服务器端验证输入的验证码是否正确是用到了String的equals方法,具体是这样的:
String validate_code=request.getParameter("validate_code");
String validate_session=(String)session.getAttribute("rand");
out.print("@"+validate_code+validate_session+"@");

if(validate_code.equals(validate_session))
{
out.print("<script>alert('验证码错误,请重新输入');history.back(-1)</script>");
}
else
{
..........
}
验证玛都是数字组成,我打印出来的数字都一样,可是,老是提示验证码错误,有人告诉我这个问题是怎么回事吗?

后来我看了一下相关帖子,以为是编码问题,于是有将两个转换为相同的编码ISO-8859-1,结果还是不行,问题紧迫,在线等,希望大家给点意见和看法。
...全文
334 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wjazz 2006-08-26
  • 打赏
  • 举报
回复
呵呵,也是,谢谢大家的解答,本人刚开始学不久,难免会问些低级的问题,请大家多谅解
Key 2006-08-25
  • 打赏
  • 举报
回复
简单问题被自己搞晕了。

hf515 2006-08-25
  • 打赏
  • 举报
回复
LZ晕了 呵呵
redv 2006-08-23
  • 打赏
  • 举报
回复
== 是不能比较字符串是否相同的,只能比较对象是不是同一个引用。
bigc2000 2006-08-22
  • 打赏
  • 举报
回复
如果是数字,现转换为数字,然后再比较数字是否一样更好。
killme2008 2006-08-19
  • 打赏
  • 举报
回复
晕死,LZ恐怕自己已经晕了,你仔细理下逻辑关系再来,休息休息

==用来判断两个引用是否指向同一个对象
String的equals方法判断两个String的内容是否一致
阿冲 2006-08-19
  • 打赏
  • 举报
回复
==是用来判断两个引用是否相等,,,equals方法是用来判断两个引用指向的对象是否相等,,,
wjazz 2006-08-18
  • 打赏
  • 举报
回复
呵呵,脑壳晕了,谢谢大虾,不过我换为==号时候,他又能通过,这个是又是什么原因啊?
if(validate_code==validate_session)
{
out.print("<script>alert('验证码错误,请重新输入');history.back(-1)</script>");
}
vgvg 2006-08-18
  • 打赏
  • 举报
回复
if(validate_code.equals(validate_session))
{
out.print("<script>alert('验证码错误,请重新输入');history.back(-1)</script>");
}

你的代码就是 一致时才报错的啊!1

wjazz 2006-08-18
  • 打赏
  • 举报
回复
补充一点,两个字符串都没有空格

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧