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


我知道我可以这样在数字后加“ 0”,但是如果我想在数字前加“ 0”呢?

g>>=1;显然不起作用。

最佳答案

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

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

10-06 16:11