当前位置: 技术问答>java相关
为什么明明是空值,但是显示非空呢?
来源: 互联网 发布时间:2015-02-14
本文导语: 情况如下: 在一个new_topic.jsp的文件中有以下语句,用来发送信息,用action传到insertnew_topic.jsp页面中: 在文本框是空的情况下,发过去了,在insertnew_topic.jsp页面用以下语句检查发过来的是...
情况如下:
在一个new_topic.jsp的文件中有以下语句,用来发送信息,用action传到insertnew_topic.jsp页面中:
在文本框是空的情况下,发过去了,在insertnew_topic.jsp页面用以下语句检查发过来的是否空值:
String topic_name=request.getParameter("topic_name");
if(topic_name==null)
out.println("空");
else out.println("不空");
结果在insertnew_topic.jsp的页面中显示的居然是“不空”,
要是把上面那句换成 else out.println(topic_name);
它又没东西显示出来,空白的,这是为什么呢?
(文本框可以确认是空的)
在一个new_topic.jsp的文件中有以下语句,用来发送信息,用action传到insertnew_topic.jsp页面中:
在文本框是空的情况下,发过去了,在insertnew_topic.jsp页面用以下语句检查发过来的是否空值:
String topic_name=request.getParameter("topic_name");
if(topic_name==null)
out.println("空");
else out.println("不空");
结果在insertnew_topic.jsp的页面中显示的居然是“不空”,
要是把上面那句换成 else out.println(topic_name);
它又没东西显示出来,空白的,这是为什么呢?
(文本框可以确认是空的)
|
National(清心)的还是有问题,应该先判断是否为空,然后再trim(),否则有可能发生NullPointerException,
if(topic_name!=null&&topic_name.trim().length()>0)
out.println("不空")
else
out.print("空")
if(topic_name!=null&&topic_name.trim().length()>0)
out.println("不空")
else
out.print("空")
|
应该用topic_name.equals("")比较吧.
|
NULL与""不是一回事吧。
|
应该是这样:
if(topic_name==null && topic_name.equals(""))
out.println("空");
else
out.println("不空");
你自己试试吧!
if(topic_name==null && topic_name.equals(""))
out.println("空");
else
out.println("不空");
你自己试试吧!
|
这个问题我遇到过,当时差点气死,最后还算成功了。建议使用这个方法:
if(topic_name.trim().length()==0)
out.println("空")
else
out.print("不空")
null和""是不一样的,remember!
if(topic_name.trim().length()==0)
out.println("空")
else
out.print("不空")
null和""是不一样的,remember!
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。