I was going through the IEqualityComparer Example here I don't understand the need for the second condition with Bitwise Or
if (b2 == null && b1 == null)
return true;
else if (b1 == null | b2 == null)
return false;
Why is there a need for such a condition?