> 技术文档 > Android Studio 提示信息 ‘equals(““)‘ can be replaced with ‘isEmpty()‘

Android Studio 提示信息 ‘equals(““)‘ can be replaced with ‘isEmpty()‘

  • 在 Android Studio 中,出现如下提示信息
\'equals(\"\")\' can be replaced with \'isEmpty()\'
# 解读equals(\"\") 可以被替换为 isEmpty()
问题原因
  1. equals 方法替换为 isEmpty 方法可以优化代码的可读性和效率

  2. isEmpty 方法直接表达字符串是否为空

  3. equals 方法需要先检查对象类型是否为 String,再比较字符串

  4. isEmpty 方法直接检查字符串长度(length() == 0),效率更高

处理策略
  • equals 方法替换为 isEmpty 方法
// 原来是这样的if (str.equals(\"\")) {...}
// 修改成这样的if (str.isEmpty()) {...}
注意事项
  1. isEmpty 方法要求字符串不能为 null,否则会抛出 NullPointerException,如果字符串可能为 null,需要先做判空检查
if (str != null && str.isEmpty()) {...}
  1. Java 11 的 isBlank 方法则是用来检查字符串是否为空或仅包含空白字符
String str = \" \";System.out.println(str.isEmpty());System.out.println(str.isBlank());
# 输出结果falsetrue

尚麦网