Inspectopedia Help

Assignment used as condition

Reports assignments that are used as a condition of an if, while, for, or do statement, or a conditional expression.

Although occasionally intended, this usage is confusing and may indicate a typo, for example, = instead of ==.

The quick-fix replaces = with ==.

Example:

void update(String str, boolean empty) { // Warning: 'empty' is reassigned, // not compared to str.isEmpty() if (empty = str.isEmpty()) { ... } }

After the quick-fix is applied:

void update(String str, boolean empty) { if (empty == str.isEmpty()) { ... } }

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023