Inspectopedia
 
2024.3

Multiplication or division by power of two

Warning
New
Last modified: 03 December 2024

Reports multiplication of an integer value by a constant integer that can be represented as a power of two. Such expressions can be replaced with right or left shift operations for a possible performance improvement.

Note that this inspection is not relevant for modern JVMs (e. g., HotSpot or OpenJ9) because their JIT compilers will perform this optimization. It might only be useful in some embedded systems where no JIT compilation is performed.

Example:

A quick-fix is suggested to replace the multiplication or division operation with the shift operation:

Use the option to make the inspection also report division by a power of two. Note that replacing a power of two division with a shift does not work for negative numbers.