# 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