为什么FindBugs会显示冗余空值检查的警告

Cra*_*ggg 7 java findbugs

if (first != null && second != null && !first.equals(second)) {
  // not null & not equal
} else if (first == null ^ second == null) {
  // not both null and not both not null
  // (first == null && second != null) || (first != null && second == null)
} else {
  // both null or equal
}
Run Code Online (Sandbox Code Playgroud)

FindBugs抱怨else if(first == null ^ second == null){...}

Mar*_*aux 0

可能是因为它只是软件。