Inspectopedia Help

Pointless bitwise expression

Reports pointless bitwise expressions.

Such expressions include applying the & operator to the maximum value for the given type, applying the or operator to zero, and shifting by zero. Such expressions may be the result of automated refactorings not followed through to completion and are unlikely to be originally intended.

Examples:

// Warning: operation is pointless and can be replaced with just `flags` // 0xFFFF_FFFF is the maximum value for an integer, and both literals are treated // as 32 bit integer literals. int bits = flags & 0xFFFF_FFFF; // Warning: operation is pointless and can be replaced with just `bits` // OR-ing with 0 always outputs the other operand. int or = bits | 0x0; // Warning: operation is pointless, as always results in 0 int xor = or ^ or;

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