为了账号安全,请及时绑定邮箱和手机立即绑定

一个简单的缺费解的问题

一个简单的缺费解的问题

守着星空守着你 2019-03-13 18:15:27
项目中常使用判断 if(list!=null && list.size()>0 ){}而项目经理却说这类判断不好 最好是if(null!=list && list.size()>0){}list!=null 和 null!=list 这样写法有什么区别!
查看完整描述

7 回答

?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

在c/c++中,一般比较时会将常量放在前面,比如list==null,会建议写为null==list,因为一些粗心的童鞋会将==写为=,编译器不会报语法错误。如果常量写在前面,这类问题编译时就会发现。
在java中,类似情况编译器会有语法错误提示,所以可以不必这么写。

查看完整回答
反对 回复 2019-04-26
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

我还是喜欢用list != null,不过一般我在系统中都约定list不会null。


查看完整回答
反对 回复 2019-04-26
?
慕勒3428872

TA贡献1848条经验 获得超6个赞

这个写法根本不会报空指针异常,针对这个做法一般是有"".equals(a)的时候,如果反过来,当a为null的时候会报空指针异常。


查看完整回答
反对 回复 2019-04-26
?
森栏

TA贡献1810条经验 获得超5个赞

这种写法其实是受C语言的影响,是避免空指针异常的一种好习惯

java嘛,看个人习惯和公司的要求


查看完整回答
反对 回复 2019-04-26
?
智慧大石

TA贡献1946条经验 获得超3个赞

其实这个是受null==list || list.size() == 0的影响
如果null==list写成list == null,有时==号会误写成=,即list=null,这个时候不会报错,但如果null写在前面,null=list,这个时候就会编译出错

查看完整回答
反对 回复 2019-04-26
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

在java effective中有建议说,list类型不要返回null,直接返回一个对象,然后判断该对象的长度!
看来他说的是有道理的

查看完整回答
反对 回复 2019-04-26
?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

楼主的写法List!=null 和null!=List 是一样的
equals就需要注意,常量最好写在前面

查看完整回答
反对 回复 2019-04-26
  • 7 回答
  • 0 关注
  • 378 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号