JAVA基于位移的 int类型和tyte[]之间转换
- /**
- * 基于位移的int转化成byte[]
- * @param int number
- * @return byte[]
- */
- public static byte[] intToByte(int number) {
- byte[] abyte = new byte[4];
- // "&" 与(AND),对两个整型操作数中对应位执行布尔代数,两个位都为1时输出1,否则0。
- abyte[0] = (byte) (0xff & number);
- // ">>"右移位,若为正数则高位补0,若为负数则高位补1
- abyte[1] = (byte) ((0xff00 & number) >> 8);
- abyte[2] = (byte) ((0xff0000 & number) >> 16);
- abyte[3] = (byte) ((0xff000000 & number) >> 24);
- return abyte;
- }
- /**
- *基于位移的 byte[]转化成int
- * @param byte[] bytes
- * @return int number
- */
- public static int bytesToInt(byte[] bytes) {
- int number = bytes[0] & 0xFF;
- // "|="按位或赋值。
- number |= ((bytes[1] << 8) & 0xFF00);
- number |= ((bytes[2] << 16) & 0xFF0000);
- number |= ((bytes[3] << 24) & 0xFF000000);
- return number;
- }
JAVA 基于arraycopy合并两个byte[] 数组
- /**
- * 基于arraycopy合并两个byte[] 数组
- * @param byte[] bytes1
- * @param byte[] bytes2
- * @return byte[] bytes3
- */
- public byte[] combineTowBytes(byte[] bytes1,byte[] bytes2){
- byte[] bytes3 = new byte[bytes1.length+bytes2.length];
- System.arraycopy(bytes1,0,bytes3,0,bytes1.length);
- System.arraycopy(bytes2,0,bytes3,bytes1.length,bytes2.length);
- return bytes3 ;
- }