string比较:“==”,equals(),TextUtils.isEmpty(str),str.isEmpty()的区别

1.“==”源码分析

  • 属于基础操做符
  • 用于基础数据类型的比较
  • 比较的时候判断的是引用是否指向堆内存的同一块地址

2.equalsspa

  • String类中的方法
  • 比较当前字符串对象的实体是否与参数指定的字符串实体相同(比较内容)

3.TextUtils.isEmpty(str)指针

源码分析:code

public static boolean isEmpty(CharSequence str) {
        if (str == null || str.length() == 0)
            return true;
        else
            return false;
    }
  • String实现了这个接口
  • 咱们能够用TextUtils.isEmpty(str)来代替if(text==null || text.length()==0)

4.str.isEmpty()对象

至关于只判断了str.length == 0.当null的时候,会出现空指针异常blog

相关文章
相关标签/搜索