Class MathUtil


  • public final class MathUtil
    extends Object
    Math utility methods.
    Author:
    netty
    • Method Detail

      • findNextPositivePowerOfTwo

        public static int findNextPositivePowerOfTwo​(int value)
        Fast method of finding the next power of 2 greater than or equal to the supplied value.

        If the value is <= 0 then 1 will be returned. This method is not suitable for Integer.MIN_VALUE or numbers greater than 2^30.

        Parameters:
        value - from which to search for next power of 2
        Returns:
        The next power of 2 or the value itself if it is a power of 2
      • safeFindNextPositivePowerOfTwo

        public static int safeFindNextPositivePowerOfTwo​(int value)
        Fast method of finding the next power of 2 greater than or equal to the supplied value.

        This method will do runtime bounds checking and call findNextPositivePowerOfTwo(int) if within a valid range.

        Parameters:
        value - from which to search for next power of 2
        Returns:
        The next power of 2 or the value itself if it is a power of 2.

        Special cases for return values are as follows:

        • <= 0 = 1
        • >= 2^30 = 2^30