&&
and ||
expressions
and branches of if
statements.
While sometimes duplicate conditions are intended, in most cases they are the result of an oversight.
Example:
boolean result = digit1 != digit2 || digit1 != digit2;
To ignore conditions that may produce side effects, use the Ignore conditions with side effects option. Disabling this option may lead to false-positives, for example, when the same method returns different values on subsequent invocations.
Example:
native boolean unknownMethod();
...
if (unknownMethod() || unknownMethod()) {
System.out.println("Got it");
}
Due to possible side effects of unknownMethod()
(on the example), the warning will only be
triggered if the Ignore conditions with side effects option is disabled.