public class MathUtil extends Object
| Constructor and Description |
|---|
MathUtil() |
| Modifier and Type | Method and Description |
|---|---|
static int |
divide(int p,
int q,
RoundingMode mode)
能控制rounding方向的int相除.
|
static long |
divide(long p,
long q,
RoundingMode mode)
能控制rounding方向的long相除
jdk的'/'运算符,直接向下取整
|
static boolean |
isPowerOfTwo(int value)
是否2的倍数
|
static boolean |
isPowerOfTwo(long value)
是否2的倍数
|
static int |
mod(int x,
int m)
保证结果为正数的取模.
|
static int |
mod(long x,
int m)
保证结果为正数的取模
|
static long |
mod(long x,
long m)
保证结果为正数的取模.
|
static int |
modByPowerOfTwo(int value,
int mod)
当模为2的倍数时,用比取模块更快的方式计算.
|
static int |
nextPowerOfTwo(int value)
往上找出最接近的2的倍数,比如15返回16, 17返回32.
|
static long |
nextPowerOfTwo(long value)
往上找出最接近的2的倍数,比如15返回16, 17返回32.
|
static int |
pow(int b,
int k)
平方
|
static long |
pow(long b,
int k)
平方
|
static int |
previousPowerOfTwo(int value)
往下找出最接近2的倍数,比如15返回8, 17返回16.
|
static long |
previousPowerOfTwo(long value)
往下找出最接近2的倍数,比如15返回8, 17返回16.
|
static int |
sqrt(int x,
RoundingMode mode)
开方
|
static long |
sqrt(long x,
RoundingMode mode)
开方
|
public static int nextPowerOfTwo(int value)
value - 必须为正数,否则抛出异常.public static long nextPowerOfTwo(long value)
value - 必须为正数,否则抛出异常.public static int previousPowerOfTwo(int value)
value - 必须为正数,否则抛出异常.public static long previousPowerOfTwo(long value)
value - 必须为正数,否则抛出异常.public static boolean isPowerOfTwo(int value)
value - 不是正数时总是返回falsepublic static boolean isPowerOfTwo(long value)
value - <=0 时总是返回falsepublic static int modByPowerOfTwo(int value,
int mod)
value - 可以为负数,比如 -1 mod 16 = 15public static int mod(int x,
int m)
public static long mod(long x,
long m)
public static int mod(long x,
int m)
public static int divide(int p,
int q,
RoundingMode mode)
public static long divide(long p,
long q,
RoundingMode mode)
public static int pow(int b,
int k)
k - 平方次数, 不能为负数, k=0时返回1.public static long pow(long b,
int k)
k - 平方次数,不能为负数, k=0时返回1.public static int sqrt(int x,
RoundingMode mode)
public static long sqrt(long x,
RoundingMode mode)
Copyright © 2018. All rights reserved.