4byte,2byte java大小端int和byte互相转化

	//小端模式java int转byte4byte
public static byte[] intToByte4L(int n) {
		byte[] b = new byte[4];
		b[0] = (byte) (n & 0xff);
		b[1] = (byte) (n >> 8 & 0xff);
		b[2] = (byte) (n >> 16 & 0xff);
		b[3] = (byte) (n >> 24 & 0xff);
		return b;
	}

	//小端模式java int转byte  2byte
public static byte[] intToByte2L(int n) {
		byte[] b = new byte[2];
		b[0] = (byte) (n & 0xff);
		b[1] = (byte) (n >> 8 & 0xff);

		return b;
	}
//java小端模式byte转int 4byte

    public static int byte2Int(byte[] b) {
        int intValue = 0;
        byte[] t_byte = {0, 0, 0, 0};

        if (b.length <= 4) {
            System.arraycopy(b, 0, t_byte, 4 - b.length, b.length);
        }
        for (int i = 0; i < t_byte.length; i++) {
            intValue += (t_byte[i] & 0xFF) << (8 * (i));
        }
        return intValue;
    }

//java小端模式byte转int 2byte

    public static int byte2Int(byte[] b) {
        int intValue = 0;
        byte[] t_byte = {0, 0};

        if (b.length <= 2) {
            System.arraycopy(b, 0, t_byte, 2 - b.length, b.length);
        }
        for (int i = 0; i < t_byte.length; i++) {
            intValue += (t_byte[i] & 0xFF) << (8 * (i));
        }
        return intValue;
    }
//java大端模式int转byte  4byte
    public static byte[] intToByte4B(int n) {
        byte[] b = new byte[4];
        b[3] = (byte) (n & 0xff);
        b[2] = (byte) (n >> 8 & 0xff);
        b[1] = (byte) (n >> 16 & 0xff);
        b[0] = (byte) (n >> 24 & 0xff);
        return b;
    }

//java大端模式int转byte  2byte
    public static byte[] intToByte2B(int n) {
        byte[] b = new byte[2];
        b[3] = (byte) (n & 0xff);
        b[2] = (byte) (n >> 8 & 0xff);
        return b;
    }

//JAVA大端模式byte转int 4byte
    public static int byte2Int(byte[] b) {
        int intValue = 0;
        byte[] t_byte = {0, 0, 0, 0};

        if (b.length <= 4) {
            System.arraycopy(b, 0, t_byte, 4 - b.length, b.length);
        }
        for (int i = 0; i < t_byte.length; i++) {
            intValue += (t_byte[i] & 0xFF) << (8 * (3-i));
        }
        return intValue;
    }

//JAVA大端模式byte转int 2byte
    public static int byte2Int(byte[] b) {
        int intValue = 0;
        byte[] t_byte = {0, 0};

        if (b.length <= 2) {
            System.arraycopy(b, 0, t_byte, 2 - b.length, b.length);
        }
        for (int i = 0; i < t_byte.length; i++) {
            intValue += (t_byte[i] & 0xFF) << (8 * (1-i));
        }
        return intValue;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值