All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.sonar.l10n.java.rules.java.S2757.html Maven / Gradle / Ivy

There is a newer version: 8.6.0.37351
Show newest version

Why is this an issue?

Using operator pairs (=+, =-, or =!) that look like reversed single operators (+=, -= or !=) is confusing. They compile and run but do not produce the same result as their mirrored counterpart.

int target = -5;
int num = 3;

target =- num;  // Noncompliant: target = -3. Is that the intended behavior?
target =+ num; // Noncompliant: target = 3

This rule raises an issue when =+, =-, or =! are used without any space between the operators and when there is at least one whitespace after.

Replace the operators with a single one if that is the intention

int target = -5;
int num = 3;

target -= num;  // target = -8

Or fix the spacing to avoid confusion

int target = -5;
int num = 3;

target = -num;  // target = -3




© 2015 - 2024 Weber Informatics LLC | Privacy Policy