第一次写法比较严谨,保证xxx不是null

解决方案 »

  1.   

    碰到一个不熟悉java的头没办法
      

  2.   

    XXX 是变量么?还是其他?
      

  3.   

    1.看java类库代码是怎么写的。比如String类, public static String valueOf(Object obj) {
            return (obj == null) ? "null" : obj.toString();
        }2.http://www.google.com.hk/codesearch,搜索null != lang:java,看大家是怎么写的。
      

  4.   

    防止程序员书写遗漏等号导致错误。null != XX这样少了!也会报错。而XX!=null少了!就不会了
      

  5.   

    这个规范典故很多,比如其中一个,是因为程序员容易把 == 误写为 = ,
    如果把常量放前面 5 = i ,会编译错误,这样就能发现这种笔误bug
      

  6.   

    又不是 equal 这个方法。。
      这个方法的 有区别。
     你这样的写法 。 应该没有区别的吧。。
     看看 下面的回答
      

  7.   

    扯淡,i=5放到if里就不报错?!
      

  8.   

    java中,这两种写法没区别
      

  9.   

    从意义上将没有区别,从编程规范上讲,第一种写法是为了防止写成:null = xxx
      

  10.   

    就楼主提的问题,应该是两种写法都可以的. 
    有一种情况是这样的:
    对象A.equals("") 一般最好写成 "".equals(A),因为A如果为null, 容易抛出异常NullPointerException
      

  11.   

    一般这种情况,只是用于判断等于“==”时,采用null == xxx,防止把==误写成赋值号=
    至于!= 则完全没必要如此设计了!效果是一样的,你头真是*****。
      

  12.   

    String sss= null
    sss == null 和 null ==sss没区别obj.someMethod() ==null 和 null==obj.someMethod() 是有区别的
    因为obj为空时前者抛出空指针异常,后者不会楼主懂?
      

  13.   


    好好想想,是这样吗?
    不要误人子弟如果obj为null,无论哪种写法都会有空指针;如果obj不为null,两种写法都会执行someMethod方法,所以如果第一种写法有空指针异常的话,第二种写法也肯定会有空指针异常,两种写法根本就没什么区别
      

  14.   

    c/c++里面有防止判断条件误写成赋值的功能,java里面没有任何区别
      

  15.   

    null!= xxx 和 xxx!=null 没区别
    “abc”.equals(xxx) 和 xxx.equals("abc")有区别
      

  16.   

    我们习惯性用第一种写方,这种写法不易出错,当一个值为null时,可能在判断的时候会报错,所以应把null放前面,这样就算后面的变量是null也不会报错,在具体的实践中如果有这样的错可以想想是不是因为这个原因
      

  17.   

    你的头一定上过尚学堂马士兵的java课 课上就有讲过这个问题 主要因为为了避免出错 xxx是变量 用前一种的话 不容易出错 即使出错编译器会报错 这种错误主要就是落下"!"号 但是第二种的话  你忘记下的话 编译器也不会报错 不知道哦这样讲你能明白否 
      

  18.   

    这个主要是编译时,报错,比如要判断x是否等于1,有两种写法:x==1,1==x,但是有时我们会写错写成了x=1,1=x,这是前一种写法x=1是不会报错的,所以我们很难发现这样的错误,如果是后面一种的话,编译器就会报错。所以这是一种习惯问题,平时养成1==x这种风格的写法是有好处的。
      

  19.   

    是这样。怕==误写成=,比如if(val==null){/*...*/}
    写成if(val=null)//不会报错但是如果把null写在前面就会报错:if(null=val)