1个回答
展开全部
就返回结果的情况来看,有一个区别,就是当 str 是空(null)或空串("")时 TextUtils.isEmpty(str) 返回 true,否则返回 false。而当空(null)时 str.isEmpty() 会空指针异常。
就效率上来看, str.isEmpty() 要比 TextUtils.isEmpty() 快,因为如果看官方源码的话可以发现 TextUtils.isEmpty() 判断了两步,先判断 == null,再判断 .length == 0。而前者只判断 .length == 0。
从结构上上看,TextUtils.isEmpty(str) 是一个静态方法,而 str.isEmpty() 是 String 类的对象所拥有的方法。
就效率上来看, str.isEmpty() 要比 TextUtils.isEmpty() 快,因为如果看官方源码的话可以发现 TextUtils.isEmpty() 判断了两步,先判断 == null,再判断 .length == 0。而前者只判断 .length == 0。
从结构上上看,TextUtils.isEmpty(str) 是一个静态方法,而 str.isEmpty() 是 String 类的对象所拥有的方法。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询