在Java中,二进制数的表示方法主要有以下两种方式:
一、直接使用二进制字面量表示
Java允许使用二进制字面量直接表示整数,需以`0b`或`0B`开头,后跟0或1的序列。例如:
```java
int binaryNum = 0b1010; // 十进制10
int binaryNum2 = 0B1010; // 同样表示十进制10
```
注意事项:
1. 二进制数长度需为4的倍数,不足时自动补零(如`0b10`会被解释为`0b0010`)。
2. 仅支持`int`、`long`等整数类型,`byte`、`short`等需通过十六进制或八进制转换。
二、通过进制转换方法实现
Java提供`Integer`类的静态方法进行进制转换:
二进制转十进制:
`Integer.toBinaryString(int value)`
示例:`String binaryStr = Integer.toBinaryString(255);` → `"11111111"`。
十进制转二进制:
`Integer.toBinaryString(int value)`(与上述方法相同)。
其他进制转换:
- 八进制:`Integer.toOctalString(int value)`
- 十六进制:`Integer.toHexString(int value)`
示例:`int decimal = 255;` → 二进制为`11111111`,八进制为`0377`,十六进制为`0xFF`。
总结:直接使用二进制字面量简洁直观,适合固定长度的二进制数;通过`Integer`类方法则支持任意进制转换,适用于动态场景。