Method with more than three negations
Reports methods with three or more negations. Such methods may be confusing.
Example:
void doSmth(int a, int b, boolean flag1, boolean flag2) {
if (!flag && !flag2) {
if (a != b) {
doOther();
}
}
}
Without negations, the method becomes easier to understand:
void doSmth(int a, int b, boolean flag1, boolean flag2) {
if (flag1 || flag2 || a == b) return;
doOther();
}
Configure the inspection:
Use the Ignore negations in 'equals()' methods option to disable the inspection within
equals()
methods.Use the Ignore negations in 'assert' statements to disable the inspection within
assert
statements.
Inspection options
Option | Type | Default |
---|---|---|
Ignore negations in 'equals()' methods | Checkbox | true |
Ignore negations in 'assert' statements | Checkbox | false |
Inspection Details | |
---|---|
Available in: | IntelliJ IDEA 2023.3, Qodana for JVM 2023.3 |
Plugin: | Java, 233.SNAPSHOT |
Last modified: 13 July 2023