public class MathUtils
extends java.lang.Object
| 构造器和说明 |
|---|
MathUtils() |
| 限定符和类型 | 方法和说明 |
|---|---|
static <T> T |
bytesToNumber(boolean bigEndian,
java.lang.Class<T> cls,
byte... src)
将字节数组转数值
|
static int |
calcCRC_CCITT_0xFFFF(byte[] bytes)
CRC校验,CRC-CCITT (0xFFFF)
|
static int |
calcCRC_CCITT_0xFFFF(byte[] bytes,
int offset,
int len)
CRC校验,CRC-CCITT (0xFFFF)
|
static int |
calcCRC_CCITT_XModem(byte[] bytes)
CRC校验,CRC-CCITT (XModem)
|
static int |
calcCRC_CCITT_XModem(byte[] bytes,
int offset,
int len)
CRC校验,CRC-CCITT (XModem)
|
static int |
calcCRC16_Modbus(byte[] data)
CRC16校验,Modbus
|
static int |
calcCrc8(byte[] bytes)
Name: CRC-8 x8+x2+x+1
Poly: 0x07
Init: 0x00
Refin: False
Refout: False
Xorout: 0x00
|
static float[] |
getPercents(int scale,
float... values)
计算各值占的比例,相加为100%
|
static byte[] |
joinPackage(byte[]... src)
组包
|
static byte[] |
numberToBytes(boolean bigEndian,
long value,
int len)
将整数转字节数组
|
static <T extends IWeight> |
randomByWeight(java.util.List<T> list)
按权重随机
|
static byte[] |
reverseBitAndByte(byte[] src)
翻转整个数组,每个bit。
|
static double |
setDoubleAccuracy(double num,
int scale)
精确到几位小数,不进行4舍5入
|
static java.util.List<byte[]> |
splitPackage(byte[] src,
int size)
分包
|
public static double setDoubleAccuracy(double num,
int scale)
num - 数字scale - 取几位小数public static float[] getPercents(int scale,
float... values)
scale - 取几位小数。12.3%表示1位小数public static byte[] numberToBytes(boolean bigEndian,
long value,
int len)
bigEndian - true表示高位在前,false表示低位在前value - 整数,short、int、longlen - 结果取几个字节,如是高位在前,从数组后端向前计数;如是低位在前,从数组前端向后计数public static <T> T bytesToNumber(boolean bigEndian,
java.lang.Class<T> cls,
byte... src)
bigEndian - true表示高位在前,false表示低位在前cls - 返回的数据类型src - 待转字节数组public static byte[] reverseBitAndByte(byte[] src)
public static java.util.List<byte[]> splitPackage(byte[] src,
int size)
src - 源size - 包大小,字节public static byte[] joinPackage(byte[]... src)
src - 源public static int calcCrc8(byte[] bytes)
public static int calcCRC16_Modbus(byte[] data)
public static int calcCRC_CCITT_XModem(byte[] bytes)
public static int calcCRC_CCITT_XModem(byte[] bytes,
int offset,
int len)
public static int calcCRC_CCITT_0xFFFF(byte[] bytes)
public static int calcCRC_CCITT_0xFFFF(byte[] bytes,
int offset,
int len)
public static <T extends IWeight> T randomByWeight(java.util.List<T> list)