美文网首页
Java 中byte[]与int转换

Java 中byte[]与int转换

作者: 被时光移动的城 | 来源:发表于2017-12-01 14:19 被阅读103次

开发中遇到的问题,进行积累。

int --> byte[] 整形转byte[]
   /**
     * int --> byte[] 整形转byte[]
     * @param res
     * @return
     */
    public static byte[] int2byte(int res) {
        byte[] targets = new byte[4];

        targets[0] = (byte) (res & 0xff);// 最低位
        targets[1] = (byte) ((res >> 8) & 0xff);// 次低位
        targets[2] = (byte) ((res >> 16) & 0xff);// 次高位
        targets[3] = (byte) (res >>> 24);// 最高位,无符号右移。
        return targets;
    }
byte[] -->int byte[]转整形
   /**
     * byte[] -->int byte[]转整形
     * @param res
     * @return
     */
    public static int byte2int(byte[] res) {
        // 一个byte数据左移24位变成0x??000000,再右移8位变成0x00??0000

        int targets = (res[0] & 0xff) | ((res[1] << 8) & 0xff00) // | 表示安位或
                | ((res[2] << 24) >>> 8) | (res[3] << 24);
        return targets;
    }
合并两个byte数组
/**
     * 合并两个byte数组
     * @param byte_1 数组1
     * @param byte_2 数组2
     * @return
     */
    public static byte[] byteMerger(byte[] byte_1, byte[] byte_2){
        byte[] byte_3 = new byte[byte_1.length+byte_2.length];
        System.arraycopy(byte_1, 0, byte_3, 0, byte_1.length);
        System.arraycopy(byte_2, 0, byte_3, byte_1.length, byte_2.length);
        return byte_3;
    }

相关文章

网友评论

      本文标题:Java 中byte[]与int转换

      本文链接:https://www.haomeiwen.com/subject/nafwbxtx.html