Class MathUtil
- java.lang.Object
-
- net.lax1dude.eaglercraft.v1_8.netty.MathUtil
-
public final class MathUtil extends java.lang.ObjectMath utility methods.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static intcompare(int x, int y)Compares twointvalues.static intcompare(long x, long y)Compare twolongvalues.static intfindNextPositivePowerOfTwo(int value)Fast method of finding the next power of 2 greater than or equal to the supplied value.static booleanisOutOfBounds(int index, int length, int capacity)Determine if the requestedindexandlengthwill fit withincapacity.static intsafeFindNextPositivePowerOfTwo(int value)Fast method of finding the next power of 2 greater than or equal to the supplied value.
-
-
-
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
<= 0then 1 will be returned. This method is not suitable forInteger.MIN_VALUEor 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
-
isOutOfBounds
public static boolean isOutOfBounds(int index, int length, int capacity)Determine if the requestedindexandlengthwill fit withincapacity.- Parameters:
index- The starting index.length- The length which will be utilized (starting fromindex).capacity- The capacity thatindex + lengthis allowed to be within.- Returns:
falseif the requestedindexandlengthwill fit withincapacity.trueif this would result in an index out of bounds exception.
-
compare
public static int compare(int x, int y)Compares twointvalues.- Parameters:
x- the firstintto comparey- the secondintto compare- Returns:
- the value
0ifx == y;-1ifx < y; and1ifx > y
-
compare
public static int compare(long x, long y)Compare twolongvalues.- Parameters:
x- the firstlongto compare.y- the secondlongto compare.- Returns:
- 0 if
x == y > 0ifx > y< 0ifx < y
- 0 if
-
-