见老程序员写if判断字符串比较的时候喜欢null.equals(str变量) 或者是 "某具体字符串".equals(str变量)。请问这样写跟 str变量.equals("某具体字符串")相比有什么好处吗 ?
解决方案 »
- 项目在Linux下报ExceptionInInitializerError
- tomcat启动的时候提示socket报错
- (求救)struts2上传图片文件
- 关于在STRUTS2中使用CometProcessor实现COMET
- strut2问题求解 OgnlException while setting property 'location' on type 'org.apache.struts2.dispatcher.ServletDispatcherResult'
- 字符处理问题
- (急!!!)新手菜鸟提问,关于在tomcat下运行servlet的问题,请各位大虾帮忙!!
- mysql驱动程序问题(装jive时碰到的):能否同时存在多个驱动程序呢,端口冲突了?
- java mail添加流作为附件总是报javax.mail.MessagingException: IOException: Bad file descriptor
- mail 服务器???????????
- 请教关于文件上传保存位置的问题
- Tomcat报错问题
str变量.equals("某具体字符串") --------因为str变量未知,可能为null,当str字符串的值为null时,会报NullPointerException的错误而 "某具体字符串".equals(str变量)。------- "某具体字符串"是已知的 避免了上面的错误。
请问你是从哪里见的,自己想象的吧
"".equals(str变量)这种写法可以避免NullPointerException异常,若str变量为null,str变量.equals("")这种写法就会抛出NullPointerException异常。
if (null != str && !"".equals(str)){}null怎么可能调用equals方法 ?
//...
}如果,你要忘写"!"很难查出错误在哪。