Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 位移位一个字节_Java_Byte_Bit - Fatal编程技术网

Java 位移位一个字节

Java 位移位一个字节,java,byte,bit,Java,Byte,Bit,我有以下代码: byte my_byte; my_byte |= (1 << 7); my_byte |= (1 << 6); 字节我的字节; my_byte |=(1问题是字节是有符号的,因此10000000被翻译(2的补码)为-128。使用short而不是字节。 要将所有位初始化为0,只需执行short my_byte=0; 注意:short是16位的,不像byte是8位的,因为Java中没有8位无符号原语类型Achar,它是Java中唯一的无符号整数

我有以下代码:

byte my_byte;   
my_byte |= (1 << 7);
my_byte |= (1 << 6);    
字节我的字节;

my_byte |=(1问题是
字节
是有符号的,因此
10000000
被翻译(2的补码)为-128。使用
short
而不是
字节
。 要将所有位初始化为0,只需执行
short my_byte=0;


注意:short是16位的,不像byte是8位的,因为Java中没有8位无符号原语类型

A
char
,它是Java中唯一的无符号整数,也是一个很好的选择。谢谢大家的帮助。