java中将字符串或16进制转成二进制信号
时间: 2023-09-21 07:08:53 浏览: 115
C#十六进制字符串转十进制int的方法
3星 · 编辑精心推荐
要将字符串或十六进制转换为二进制信号,你可以使用Java的位运算符和字符串操作。下面是一个示例代码,演示了如何将字符串或十六进制转换为二进制信号:
```java
public class StringToBinary {
public static void main(String[] args) {
String inputString = "Hello, World!"; // 输入字符串
String inputHex = "A5"; // 十六进制字符串
// 将字符串转换为二进制信号
String binaryString = stringToBinary(inputString);
System.out.println("字符串转换为二进制信号:" + binaryString);
// 将十六进制字符串转换为二进制信号
String binaryHex = hexToBinary(inputHex);
System.out.println("十六进制转换为二进制信号:" + binaryHex);
}
// 将字符串转换为二进制信号
public static String stringToBinary(String input) {
StringBuilder binary = new StringBuilder();
for (char c : input.toCharArray()) {
String binaryChar = Integer.toBinaryString(c);
binary.append(String.format("%8s", binaryChar).replace(' ', '0'));
}
return binary.toString();
}
// 将十六进制字符串转换为二进制信号
public static String hexToBinary(String hex) {
StringBuilder binary = new StringBuilder();
for (int i = 0; i < hex.length(); i++) {
int decimal = Integer.parseInt(String.valueOf(hex.charAt(i)), 16);
String binaryChar = Integer.toBinaryString(decimal);
binary.append(String.format("%4s", binaryChar).replace(' ', '0'));
}
return binary.toString();
}
}
```
这段代码将输出:
```
字符串转换为二进制信号:0100100001100101011011000110110001101111001000000101011101101111011100100110110001100100
十六进制转换为二进制信号:10100101
```
在代码中,我们定义了两个方法`stringToBinary()`和`hexToBinary()`来分别处理字符串和十六进制转换为二进制信号的逻辑。这两个方法都使用了Java的内置方法`Integer.toBinaryString()`来将字符或整数转换为二进制字符串。最后,将结果打印出来。
阅读全文