2017年09月07日 15:10:17 perfectnihil 阅读数:365
上篇文章讲了如何通过String的
format BigInteger的方式获取完整32位int字符串
其实还有其他方法可以是实现这样的需求
方法二
public static void main(String args[]){ int a = 1; System.out.println(getFullBinaryString(a)); } public static String getFullBinaryString(int num){ String s = Integer.toBinaryString(num); String format = String.format("%32s", s); format = format.replaceAll(" ","0"); return format; }
打印结果如下:
0000 0000 0000 0000 0000 0000 0000 0001
这种方法的思路是,利用format字符串固定好长度,左边空余
可以补空格的这个特性,先把空格留出来,然后替换为0。
这种方式比较简单。
方法三
之前的方法都是通过format的方式来完成我们的需求
我们换种方式
public static void main(String args[]){ int a = 1; System.out.println(getFullBinaryString(a)); } public static String getFullBinaryString(int num){ String result = Integer.toBinaryString(num); int count = 32-result.length(); for (int i = 0;i<count;i++){ result=0+result; } return result; }
打印结果
0000 0000 0000 0000 0000 0000 0000 0001
这种方式比较好理解,也比较简单,只不过一直拼接字符串
稍微耗费了点性能,换成StringBuilder会比较好