您的位置:首页 > 编程语言 > Java开发

Java中int类型和tyte[]之间转换及byte[]合并

2015-07-30 15:15 501 查看
JAVA基于位移的 int类型和tyte[]之间转换

[java] view plaincopy
/**
* 基于位移的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[] 数组

[java] view plaincopy
/**
* 基于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 ;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: