【发布时间】:2016-07-31 18:26:12
【问题描述】:
我想将字符串的每个字符转换为新的二进制字符串。这是我的工作:
public static void main(String args[]) {
String MESSAGE = "%";
String binaryResult = "";
for (char c : MESSAGE.toCharArray()){
binaryResult += Integer.toBinaryString( (int) c);
}
System.err.println(binaryResult);
}
例如输入:“%”,我得到以下输出:“100101” 我的问题是前面的“0”被删除了...... 我想要:“0100101”。有人有想法吗?
【问题讨论】:
-
请更清楚一点——为什么你需要有一个前导0?在二进制中,01001 等价于 1001。您的程序应该如何确定何时添加 0?应该总是 7 位数字吗?
-
this 你在找什么吗?
-
其实没有,因为我不想指定位数。如果有的话,我只想拥有前导 0。
-
你需要更清楚。给出一个示例输入和输出。描述你需要什么。默认情况下,二进制数没有前导数字 - 这就像我们尝试解析一个整数并将其设为 00034 而不是 34。在什么情况下需要用 0 填充结果?
-
对不起,我忘了说明我需要 7 位表示