单字节仅指一个英文字符。双字占两个字节,汉字占两个字节
单字节英文是字节;位是最小的数字单位,英文是位。
一个字节包含8位。一般来说,计算机初学者使用的ascii码是单字节字符。因为计算机是二进制的,一个位只能表示为0或1,8位(通常从右到左)可以有0-127(2减去1的8次方)的不同数值表示。
双字节字符包含两个16位字节。
一般来说,很容易理解英文字母属于单字节字符,而中文字符属于双字节字符。因为英文字母、数字、符号等可以用128个不同的数值来表示,但太多的汉字不能,所以需要扩展到双字节。
byte是8位,int是32位,因此如果要将4个字节转换为int,如果示例中只有两位,则需要向高位添加两个0,然后才能进行转换。这里是一个通用的转换代码/**4位字节数组到integer*@paramb*@return*/publicstaticintbyte2int(byte[]b){intintvalue=0for(inti=0i<b.lengthi){intvalue=(b[i]&0xff)<<(8*(3-i))}returnintvalue}调用时,会传入一个byte[]array。顺序是从高到低。相应的位置码意味着高位向左移动24位,低位保持在原始位置。