public class MathUtils
extends java.lang.Object
| 构造器和说明 |
|---|
MathUtils() |
| 限定符和类型 | 方法和说明 |
|---|---|
static int |
addExact(int x,
int y)
计算两个参数的和,如果相加出现溢出那就返回
int的最大值. |
static long |
addExact(long x,
long y)
计算两个参数的和,如果相加出现溢出那就返回
long的最大值. |
static boolean |
adjacent(int x1,
int y1,
int x2,
int y2)
判定两点(x1,y1)和(x2,y2)是否相邻.
|
static boolean |
adjacent(Point p1,
Point p2)
判定两点P1(x1,y1)和P2(x2,y2)是否相邻.
|
static double |
distance(double x1,
double y1,
double x2,
double y2)
计算两点(x1,y1)到(x2,y2)的距离.
|
static double |
distance(int x1,
int y1,
int x2,
int y2)
计算两点(x1,y1)到(x2,y2)的距离.
|
static double |
distance(Point p1,
Point p2)
计算两点P1(x1,y1)到P2(x2,y2)的距离.
|
static int |
multiplyExact(int x,
int y)
计算两个参数的乘积,如果相乘出现溢出那就返回
int的最大值. |
static long |
multiplyExact(long x,
long y)
计算两个参数的乘积,如果相乘出现溢出那就返回
long的最大值. |
public static int addExact(int x,
int y)
int的最大值.
区别于JDK的方法,仅仅认同判定方案,游戏世界,溢出时那就修正一个合理的值,一般调用此方法的游戏逻辑决不能因异常而中断
x - 第一个参数y - 第二个参数Math.addExact(int, int)public static long addExact(long x,
long y)
long的最大值.
区别于JDK的方法,仅仅认同判定方案,游戏世界,溢出时那就修正一个合理的值,一般调用此方法的游戏逻辑决不能因异常而中断
x - 第一个参数y - 第二个参数Math.addExact(long, long)public static int multiplyExact(int x,
int y)
int的最大值.
区别于JDK的方法,仅仅认同判定方案,游戏世界,溢出时那就修正一个合理的值,一般调用此方法的游戏逻辑决不能因异常而中断
x - 第一个参数y - 第二个参数Math.multiplyExact(int, int)public static long multiplyExact(long x,
long y)
long的最大值.
区别于JDK的方法,仅仅认同判定方案,游戏世界,溢出时那就修正一个合理的值,一般调用此方法的游戏逻辑决不能因异常而中断
x - 第一个参数y - 第二个参数Math.multiplyExact(long, long)public static double distance(int x1,
int y1,
int x2,
int y2)
Math.sqrt(|x1-x2|² + |y1-y2|²)
x1 - 坐标X1y1 - 坐标Y1x2 - 坐标X2y2 - 坐标Y2public static double distance(double x1,
double y1,
double x2,
double y2)
Math.sqrt(|x1-x2|² + |y1-y2|²)
x1 - 坐标X1y1 - 坐标Y1x2 - 坐标X2y2 - 坐标Y2public static double distance(Point p1, Point p2)
Math.sqrt(|x1-x2|² + |y1-y2|²)
p1 - 坐标1p2 - 坐标2public static boolean adjacent(int x1,
int y1,
int x2,
int y2)
可用于两个AOI是否相邻判定
x1 - 坐标X1y1 - 坐标Y1x2 - 坐标X2y2 - 坐标Y2