Java中二进制运算主要通过位运算符实现,支持二进制数表示、转换及位操作。以下是核心要点:
一、二进制数表示方法
字面量前缀 - 二进制数以`0b`或`0B`开头(Java 7及以上版本支持),例如:`int num = 0b101010;`表示十进制42。
- 八进制以`0`开头(如`077`),十六进制以`0x`或`0X`开头(如`0xFFFF`)。
数据类型限制
- `byte`类型为8位,范围-128到127,符号位为第8位。
二、进制转换方法
十进制转其他进制
- 二进制:`Integer.toBinaryString(int)`
- 八进制:`Integer.toOctalString(int)`
- 十六进制:`Integer.toHexString(int)`
- 示例:`int num = 255;`转换为二进制为`11111111`。
其他进制转十进制
- 使用`Integer.parseInt(String s, int radix)`,例如:`int decimalNum = Integer.parseInt("0x35BF", 16);`。
三、位运算操作
按位与(&)
- 逐位比较,全1结果为1,否则为0。例如:`51 & 5`结果为1。
按位或(|)
- 逐位比较,有1结果为1,否则为0。例如:`51 | 5`结果为55。
其他常见操作
- 按位异或(^)、左移(<<)、右移(>>)等,适用于位掩码、位移计算等场景。
四、使用场景
掩码计算: 通过按位与实现权限验证(如`0b11110000 & 0b00001000`提取特定位)。 位移操作
总结:Java二进制运算通过字面量前缀、`Integer`类方法及位运算符实现,适用于数值转换、逻辑控制等场景。