java - 如何在二进制数前面加0

标签 java bit

int g = 269;
System.out.println( Integer.toBinaryString(g));//100001101
g<<=10;
System.out.println( Integer.toBinaryString(g));//1000011010000000000

我知道我可以这样做,在数字后面添加“0”,但是如果我想在数字前面添加它们怎么办?

g>>=1; 显然是行不通的。

最佳答案

打印整数前导零是没有意义的,或者它是二进制表示形式。您想打印其中多少?编译器如何自己知道这一点。但是,您始终可以将字符串格式化为用零填充,如下所示:

int g = 269;
String paddedWithZero = String.format("%32s", Integer.toBinaryString(g)).replace(' ', '0');

关于java - 如何在二进制数前面加0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22539995/

相关文章:

java - 在实例重新启动之前,从 GAE HRD 中的 Json 创建的 JDO 无法正确转换回 Json

java - Kafka 0.8.2.2 - 无法发布消息

python - 遍历字符串列表并组合字符串值 Python

c - 在两点之间用新位替换旧位

c - 位填充 (C)

c - 在不使用 If else 的情况下找出两个数字的最大值和最小值?

java - "Comparison method violates its general contract!"

java - FileProvider - 由于 FileNotFoundException :/Download/TempFile. html(没有这样的文件或目录),无法保存文件

c++ - 将位插入字节

java - 应用程序从后台重新启动主要 Activity ,而不是恢复之前的状态