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

Java中byte[]与int之间的转化

2014-09-25 12:47 155 查看
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 ;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: