如何在java中获取整数的0填充二进制表示?
2022-08-31 07:54:28
我认为这是一个次优的解决方案,但你可以做
String.format("%16s", Integer.toBinaryString(1)).replace(' ', '0')
java.util.Formatter中没有内置二进制转换,我建议您使用String.replace将空格字符替换为零,例如:
String.format("%16s", Integer.toBinaryString(1)).replace(" ", "0")
或者实现您自己的逻辑,将整数转换为二进制表示形式,并在此处给出的行的某个位置添加左填充。或者,如果您确实需要将数字转换为格式,则可以将二进制表示形式转换为 BigInteger,然后使用前导零进行格式化,但这在运行时非常昂贵,例如:
String.format("%016d", new BigInteger(Integer.toBinaryString(1)))