社区
Java SE
帖子详情
我曾经面试的一道题
lizhaowei
2008-01-04 11:24:08
if(obj != null)
...
if(null != obj)
...
谁可以帮我解释一下,判断对象是不是null时,关键字 null 写在 != 前面有什么好处?
这是我曾经面试时没有答出来的一道问题,我找了好久也没有找到答案。
...全文
267
14
打赏
收藏
我曾经面试的一道题
if(obj != null) ... if(null != obj) ... 谁可以帮我解释一下,判断对象是不是null时,关键字 null 写在 != 前面有什么好处? 这是我曾经面试时没有答出来的一道问题,我找了好久也没有找到答案。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tangkingthod
2008-01-07
打赏
举报
回复
孙鑫的书上有。
lizhaowei
2008-01-07
打赏
举报
回复
谢谢大家的帮助,我个人同意 liuhua0420 的解释,在java中判断条件 if(obj = null) ... 程序编译不通过,因为表达式 obj = null 的结果不是true或false,所以我同意 liuhua0420 的解释。再次感谢大家的帮助!!!
shijiang
2008-01-06
打赏
举报
回复
学习了~
火龙果被占用了
2008-01-06
打赏
举报
回复
这样跟判断空指针异常好像关系不大吧,就算obj为null也不会抛出异常的。
不是很明白这种反过来写的意义何在?也许就是习惯问题吧。
qiudawei115
2008-01-06
打赏
举报
回复
应该是防止空指针异常吧
sunyujia
2008-01-06
打赏
举报
回复
不小心少写个=就出bug了
java里面只有boolean可能出现这种情况,其他类型编译时会检查
boolean a=false;
if(a=true){
}
xiaolingshi
2008-01-06
打赏
举报
回复
认同三楼的
太空眼睛
2008-01-06
打赏
举报
回复
3楼说的对, 在C中有一个很良好的编程风格, 就是在条件判断语句中, 有经验的程序员都会把常量写在左边, 比如
if(1==a), 因为在很多时候两个等号(==)会写成一个等号(=), 如果是if(a=1),那么这个条件永远都为真, 里面
的语句总会被执行, 当写出来的程序很长时, 当编译运行, 发现结果不对的时候, 回头再来找错误是很难发现这个
隐蔽的错误的, 但如果一开始编程的习惯是把常量写在左边,即if(1=a),即使是粗心少写一个等号, 当调试的时候,编译都不会通过的
qq12411069
2008-01-05
打赏
举报
回复
学习..
f_mei520
2008-01-05
打赏
举报
回复
學習
liuhua0420
2008-01-05
打赏
举报
回复
听说是:前面null 编择时把它当成常量来看。系统处理速度快一点。
dgqbcht
2008-01-04
打赏
举报
回复
这个习惯是这样来的。最早学C编程的时候,像if(a=b)这样的条件是编译通过的,尽管你的意思是if(a==b)。
为了避免出现这种低级错误,写判断的时候习惯把常量写在前边,因为即使出现了if(null=a)这样的错误,也会被编译器提示错误,因为你不能给常量再赋值。
mcluvin
2008-01-04
打赏
举报
回复
只知道equals方法判断的时候把常量放在前面可以防止空指针异常,用"!="真想不出到底有嘛好处。
if("".equals(obj))
YeLang2007
2008-01-04
打赏
举报
回复
我也不清楚,帮你顶一下了...
[最新整理公布][汇总II]微软等数据结构+算法
面试
100
题
[第1-80
题
]
昨日,11.19,最新整理了,第61-80
题
,现在公布...各位,若对以上100
题
任何
一道
,或对已上传的任何一
题
的答案, 有任何问
题
,请把你的思路、想法,回复到此帖子上, 微软等100
题
系列,永久维护地址(2010年11.26日): ...
[答案V0.2版]精选微软数据结构+算法
面试
100
题
[前20
题
]
精选微软等数据结构+算法
面试
100
题
答案修正V0.2...各位,若对以上100
题
任何
一道
,或对已上传的任何一
题
的答案, 有任何问
题
,请把你的思路、想法,回复到此帖子上, 微软等100
题
系列,永久维护地址(2010年11.26日): ...
[珍藏版]微软等数据结构+算法
面试
100
题
全部出炉[100
题
V0.1最终完美版]
火爆出炉:微软等数据结构+算法
面试
100
题
首次...各位,若对以上100
题
任何
一道
,或对已上传的任何一
题
的答案, 有任何问
题
,请把你的思路、想法,回复到此帖子上, 微软等100
题
系列,永久维护地址(2010年11.26日): ...
解析阿里运维P7岗位
面试
的
一道
题
解析阿里运维P7岗位
面试
的
一道
题
今年有幸同事推荐到阿里
面试
,岗位是流量事业部运维开始3面都很顺利评价也很高,到第四面交叉面的时候是一位P9的前辈,技术不用说了,直接是碾压我的那种,
面试
的时候问了一些方法论...
海量数据处理
面试
题
集锦
前言 本博客内
曾经
整理过有关海量数据处理的10道
面试
题
(十道海量数据处理
面试
题
与十个方法大总结),此次除了重复了之前的10道
面试
题
之后,重新多整理了7道。仅作各位参考,不作它用。 同时,程序员编程艺术系列...
Java SE
62,615
社区成员
307,307
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章