获取int值的完整32位字符串(2)

 

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会比较好
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值