I usually prefer "equal to", because it makes code more "readable" for a human. It makes code simplier. It would be more named a "nice coding guidline" than a "rule" as it does not impact runtime at all (it was part of my previous company's coding guidlines).
Check this:
if ( !isEmpty() )
It will take your brain a few milliseconds more to understand what the test does than if you write:
if ( isEmpty() )
Even if it has no impact on runtime, I usually prefer "is equal" to "is not equal".
The same arguments goes to variables and function names. Prefer isSet attribute/method over isNotSet. Reading a piece of code like if ( !isNotSet() ) is easier than if if ( isSet() ), even if they are equivalent in the end.
If you use code you have no control on and this one provides a member answering a negative questions, then:
if ( isNotSet() )
is definitely easier to read for a developer than:
if ( !isNotSet() )