调查一下,你是  "abc".equals(def) 还是 def.equals("abc") ????散分..

解决方案 »

  1.   

    def.equals("abc") 之前判断null
      

  2.   

    "".equals(obj);
    因为能躲闪一个NullPointerException喵~~`
      

  3.   

    没看懂什么意思。def是什么?
      

  4.   

    def.equals("abc") 习惯用这个了
      

  5.   

    "abc".equals(def)
    习惯这个,不用判断def是否为null
      

  6.   

    还有   a != null 和 null != a,我昨天看了许多JDK源代码里,都用的 a != null 这样的写法.想知道大家怎么写?
      

  7.   

    "abc".equals(def)   整一分是一分
      

  8.   

    def.equals("abc")
    如果用==比较的话 1==a ,这个是为了安全编码需要吧
      

  9.   

    "abc".equals(def) 
    常量在前,变量在后
    不用判空,不会空指针
      

  10.   

    "abc".equals(def)   能避免def是null造成的编译错误
      

  11.   

    def.equals("abc") 
    一直这么用
      

  12.   

    "abc".equals(def) 虽然没有了抛出异常,但是也回避了程序对于非法数据(null)的处理吧,这个似乎....
    :) 个人意见
      

  13.   

    "abc".equals(def) 
    常量在前,变量在后 
    不用判空,不会空指针
      

  14.   

    为何JDK源码里面都是用  def.equals("abc") 和 a != null  ?
      

  15.   

    个人认为: "abc".equals(def) 虽然没有了抛出异常,但是也回避了程序对于非法数据(null)的处理吧,这个似乎违背了安全编码的规则吧
      

  16.   

    只要自己注意null的问题的话两种都一样吧...
    我是两种都用..囧,想起哪个用哪个..
      

  17.   

    "abc".equals(def)
    因为能躲闪一个NullPointerException个人认为: "abc".equals(def) 虽然没有了抛出异常,但是也回避了程序对于非法数据(null)的处理吧,这个似乎违背了安全编码的规则吧 
    没有这样反倒让代码更安全
      

  18.   

    写程序就是要做到严谨,小小的一个"abc".equals(def)和def.equals("abc") 就能判断出这个程序员编写代码是否规范,是否有水平!
      

  19.   

    "abc".equals(def) 
    这样不容易抛出null异常~~!
      

  20.   


    null也是可以比较的喵~``
    规范的话,在拿到对象的时候完成null判断,而不是用的时候.
      

  21.   

    真进对了
    以后改用"xxx".equals(ref);了
      

  22.   

    当然是
    "aaa".equals(str)的形式
    可以不用判断str是否为空
      

  23.   

    def.equals("abc") 我也习惯用这个
      

  24.   

    def.equals("abc") 习惯用这个了
      

  25.   

    "abc".equals(def)是个良好的编码风格!def.equals("abc")没有任何理由要这么用,如果让我给分,前者十分,后者负十分。
      

  26.   

    我只写过这个 def.equals("abc") 
      

  27.   

    "abc".equals(def)
    据说可以避免空指针,
      

  28.   

    我们公司的代码规范明确规定:
    用 def.equals("abc") 
    用 a!=null变量在左常量在右判断字符串是否为空要用:
    str!=null && str.length()>0
    而不用str.equals("")
      

  29.   

    顶!"abc".equals(def)  能避免def是null造成的编译错误
      

  30.   

    多数用 def.equals("abc") 
      

  31.   

    "abc".equals(def) 还是 def.equals("abc") ???? 
    --这个问题很明显 是"abc".equals(def)
    因为比如你的def 为 null引用的话  def.equals("abc") ???? 则会报nullPointerException
      

  32.   

    "abc".equals(def) 
    我是这样用的
    原因就不说了
      

  33.   

    def.equals("abc") 这个真的不怎么好么?
    本人一贯这样~~
      

  34.   

    学习了。。以后改用
    "abc".equals(def) 
    刚测试 发现真的会 报异常
      

  35.   

    一般来说,使用"abc".equals(def)多,不会发生NullPointerException异常!
      

  36.   

    "abc".equals(def)   避免空指针
      

  37.   

    "ggg".equals(object )和object.equals("ggg")有区别:
    当object 为 null 后者是会报空指针错误 .
      

  38.   

    NONO "abc".equals(def)可以少一个NULL 判断。
      

  39.   

    具体情况具体分析
    如果没有特殊要求的话,可以用"".equals()
      

  40.   

    我两种都用,只要代码逻辑严谨,这就只是个习惯问题:
    String str = ...;
    ...
    boolean result = (str == null) ? false : str.equals("target");  //方法1
    boolean result = "target".equals(str);  //方法2,这个更简洁
    //另外判断字符串是否为空串建议使用
    boolean isEmptyString = str != null && str.length() == 0;  //这种方式效率较高