如何合并MSB和LSB字节?

时间:2018-10-24 11:42:24

标签: java android byte

这是结合MSB和LSB的代码

public class HelloWorld{

     public void combineMsbLsbByte(){
        System.out.println("Hello World");

     byte msb = 0xC8;
    byte lsb = 0x01;
    int result = (msb << 8) + lsb; 

       System.out.println("Result ="+result);
     }
}

但我在下面遇到错误

错误:不兼容的类型:可能从int到字节的有损转换          字节MSB = 0xC8;

我猜这是由于字节范围而引起的。

如何处理?

1 个答案:

答案 0 :(得分:1)

byte是一种签名类型。其值在-128到127的范围内,0xC8 (200)不在此范围内 因此您应该像这样使用int

    int msb =0xC8;
    int lsb = 0x01;
    int result =(msb << 8) + lsb;