首页  > 教育解读  > java怎么写二进制

java怎么写二进制

2025-04-30 22:02:10
灯塔何老师
灯塔何老师已认证

灯塔何老师为您分享以下优质知识

在Java中处理二进制数据主要涉及数值转换和文件操作,以下是核心方法与示例:

一、数值进制转换

十进制转二进制/八进制/十六进制

使用`Integer`类提供的方法:

```java

int num = 255;

String binaryStr = Integer.toBinaryString(num); // 二进制

String octalStr = Integer.toOctalString(num); // 八进制

String hexStr = Integer.toHexString(num); // 十六进制

```

其他进制转十进制

使用`Integer.parseInt(String s, int radix)`方法:

```java

String hexStr = "1A3F";

int decimal = Integer.parseInt(hexStr, 16); // 十六进制转十进制

```

二、二进制文件读写

写入二进制文件

使用`FileOutputStream`类:

```java

String filePath = "binary_file.bin";

byte[] data = {0x01, 0x02, 0x03};

try (FileOutputStream out = new FileOutputStream(filePath)) {

out.write(data);

} catch (IOException e) {

e.printStackTrace();

}

```

读取二进制文件

使用`FileInputStream`类:

```java

private static double readBinDouble(FileInputStream fis) throws IOException {

byte[] bytes = new byte;

fis.read(bytes);

return Double.parseDouble(new String(bytes, 0, 8, "0x"));

}

```

三、位运算示例

使用`Integer`类进行位操作:

```java

int a = 255; // 二进制 11111111

int b = 128; // 二进制 10000000

int c = a & b; // 二进制 10000000 (80)

int d = a | b; // 二进制 11111111 (255)

int e = a ^ b; // 二进制 01111111 (191)

int f = ~a; // 二进制 00000000 (0)

```

四、注意事项

负数处理:

Java采用二进制补码表示负数,`Integer.toBinaryString`会显示补码形式。

资源管理:使用`try-with-resources`语句自动关闭文件流,避免资源泄漏。

以上方法覆盖了Java中二进制转换和文件操作的核心需求,可根据具体场景选择使用。