null==a和a==null的区别

在项目代码中在if判断中会经常看到一些老司机这样写:if(null == a),而我由于习惯会写成if(a == null),这两种有什么区别呢?

其实两种并没有什么区别,只是前者在细节处理上。我们在代码判空时,由于手快可能将if(a == null)写成if(a = null),这在一些语言中是可以编译通过的,但结果会报错,这样就会让我们花费时间去查找问题。但写成if(null = a)编译一定是会报错的,所以在一定程度上减少了错误排查的时间。

有的朋友可能会说在C#环境下,这两种情况好像都会报错的吧,如:

 

好像确实是这样,但是您忘记了C#新增的dynamic类型吗?编译是通过的,但是运行起来就炸了。

 

所以,好的程序从细节出发。

参考:https://blog.csdn.net/DaJian35/article/details/81503292

posted @ 2019-09-18 08:27  酷学大叔  阅读(3297)  评论(2编辑  收藏  举报