Inspectopedia Help

Pointless arithmetic expression

Reports pointless arithmetic expressions. Such expressions include adding or subtracting zero, multiplying by zero or one, and division by one.

Such expressions may be the result of automated refactorings and they are unlikely to be what the developer intended to do.

The quick-fix simplifies such expressions.

Example:

void f(int a) { int x = a - a; int y = a + 0; int res = x / x; }

After the quick-fix is applied:

void f(int a) { int x = 0; int y = a; int res = 1; }

Note that in rare cases, the suggested replacement might not be completely equivalent to the original code for all possible inputs. For example, the inspection suggests replacing x / x with 1. However, if x is zero, the original code throws ArithmeticException or results in NaN. Also, if x is NaN, then the result is also NaN. It's very unlikely that such behavior is intended.

Inspection options

Option

Type

Default

Ignore named constants in determining pointless expressions

Checkbox

true

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023