zoukankan      html  css  js  c++  java
  • "".equals(xxx)和xxx.equals("")的区别

    今天做项目发现如下这个问题

    看见别人用 if ("abc".equals(str)),然后自作聪明地认为 if (str.equals("abc"))是等效的,就这么写

    运行后发现出现空指针异常,然后用 debug 调试,发现了当 str != null的时候的确是没有区别的

    当 str ==null 的时候,str.equals("abc") 就会出现空指针异常了。

    用 null.equals("abc") 直接不通过编译的,所以这种写法本身就是不合法的,即使用变量把 null "包装"起来,能通过编译,但运行起来还是错误的吧!

  • 相关阅读:
    分数的表示和运算
    用户管理
    DML,DDL
    索引
    sql语句执行顺序
    伪劣
    序列
    视图
    完整性约束
    ASP.NET MVC学习笔记(二)登陆验证
  • 原文地址:https://www.cnblogs.com/zempty/p/4328798.html
Copyright © 2011-2022 走看看