看到有的人代码里经常这样写
if(null == xxx)
{
}if(xxx == null)
{
}问下大侠,有啥区别?

解决方案 »

  1.   

    null==XXX这种一般是C/C++程序员过渡到C#之后的遗留习惯.应为C里 如果写成 if(XXX=NULL),也可以编译通过,只是是先将XXX设为NULL(赋值语句)然后将其作为true值再执行if里的语句。这样就和实际要做的步骤不同了。貌似主要为了防止这种情况发生,
    C#中,不允许if(里写赋值语句),XXX==NULL和NULL==XXX是一样的。
      

  2.   

    从技术上讲没有区别,只是显示是了设计者的习惯,它认为这样有助于避免把
    xxx == null 写成xxx = null,也从某种意义上提高了可读性!