jsp 关于if的空值的判断

例如:Stringa="";if(a!=null){System.out.println("1");}执行这个,为什么会打印出1呢?if的判断语句怎样写使a的值null和... 例如:
String a= " ";
if(a!=null){
System.out.println("1");
}
执行这个,为什么会打印出1呢?

if的判断语句怎样写使a的值null 和空格的时候,都不执行?
展开
 我来答
小红的花园
推荐于2017-10-10 · 超过17用户采纳过TA的回答
知道答主
回答量:67
采纳率:0%
帮助的人:28.4万
展开全部
java中除了基本数据类型外其他的默认值就都是null了,你这个a赋了个“”值,它的值就是空,不是null,null != "";所以a != null成立,所以打印出1 了。
想要在jsp里面做这些判断还是用jstl标签吧,反正以后绝对会用到的。
在页面的最上面<%@ page这一行的下面导入标签库:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>;然后你就可以在jsp页面用标签了。
不为空判断:<c:if test="${ not empty a }">内容</c:if>
为空判断:<c:if test="${empty a }">内容</c:if>
百度网友8b93ebb
2013-09-12 · TA获得超过193个赞
知道小有建树答主
回答量:297
采纳率:100%
帮助的人:86.3万
展开全部
你那样写。当然不对了。。你那样只能判断这个值是否为null 而不是判断这个值为空。你可以这样判断。绝对能行。!" ".equals(a) 意思是。a 不为 “ ”
if(a!=null && !" ".equals(a)){ } 这个判断 在a的值null 和空格的时候,都不执行。不懂继续追问我
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xinge1023
2013-09-12 · 超过20用户采纳过TA的回答
知道答主
回答量:77
采纳率:0%
帮助的人:36.4万
展开全部
因为字符串的空和null不是一个概念,空的意思是值为空,null的意思是对象为空。

要a的值为null 和空格的时候,都不执行可以这样写,对象a为null或者a的值为空的时候不执行 if(a==null || "".equals(a)){}else{这里面的就是你要执行的}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ff3112035
2013-09-12
知道答主
回答量:24
采纳率:0%
帮助的人:20万
展开全部
肯定能打印出来1啊 因为你申明的a=" ";(貌似还有个空格)。 这说明a对象本身就不是个null。(nlull也是个对象)

如果你申明 String a; 再判断 a != null 那就打印出来1

if的判断语句怎样写使a的值null 和空格的时候,都不执行?

if(a!=null && a!= " ")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3bdb09e
2013-09-12 · 超过23用户采纳过TA的回答
知道答主
回答量:75
采纳率:0%
帮助的人:39.3万
展开全部
这里有几个知识点:1.好要好好复习==和equals的区别。
2.null 和“”在内存中的状态。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式