将一个整数转化成二进制的方法:
1 方法1:使用BigInteger类:
@Test
public void test1(){
BigInteger b=new BigInteger("10");//1010
System.out.println(b.toString(2));//0
b=new BigInteger("1");
System.out.println(b.toString(2));//1
b=new BigInteger("255");
System.out.println(b.toString(2));//11111111
b=new BigInteger("254");
System.out.println(b.toString(2));//11111110
}
</pre><pre>
2 方法2:使用Integer.toBinaryString():
@Test
public void test(){
String str2 = Integer.toBinaryString(0);
System.out.println(str2);//0
str2 = Integer.toBinaryString(1);
System.out.println(str2);//1
str2 = Integer.toBinaryString(255);
System.out.println(str2);//11111111
}
如上,确实能够将一个整数转化成二进制,但是不足之处在于当一个数被转化成二进制时不足8位时,不会自动补0;
@Test
public void test3(){
String tempStr = "";
String str2 = Integer.toBinaryString(10);
//判断一下:如果转化为二进制为0或者1或者不满8位,要在数后补0
int bit = 8-str2.length();
if(str2.length()<8){
for(int j=0; j<bit; j++){
str2 = "0"+str2;
}
}
tempStr += str2;
System.out.println(tempStr);
}