java语言 exArray[0]=0x01(高位),hexArray[1]=0x21(低位)转化为int 0x121 示例
时间: 2024-09-19 08:09:05 浏览: 36
在Java中,如果你有一个存储十六进制数的数组,如`exArray`的第一个元素是0x01(相当于十进制的1),第二个元素是0x21(相当于十进制的33),想要将它们组合成一个整数0x121(相当于十进制的289),你可以这样做:
```java
byte[] exArray = { (byte) 0x01, (byte) 0x21 }; // 将两个字节转换为字节数组
int intValue = (exArray[0] & 0xFF) << 8 | exArray[1]; // 按位左移并合并
// 解释步骤:
// 1. `(exArray[0] & 0xFF)` 取出第一个字节的低8位(0x01变为0x01)
// 2. `<< 8` 对结果左移8位(0x01变为0x100)
// 3. `|` 运算符连接高8位(第二个字节的0x21)和左移后的低8位(得到0x120)
System.out.println(Integer.toHexString(intValue)); // 输出:121
```
在这个例子中,我们假设数组的元素都是单字节的,如果需要处理更大的数值,可能需要调整操作。
阅读全文