在包装类中可以调用toBinaryString()方法把十进制整型转化为二进制
而我们自己也可以定义一个函数来实现十进制转化为二进制,使用到StringBuilder类。
主要思路:
将十进制转化为二进制或八进制或十六进制
将一个数整除x(x代表2或8或16)得到商和余数
循环整除,直至商为0,再将每一次整除所得到的余数倒叙拼接,即为x进制的值
package API.packeging.test;
public class Test3 {
public static void main(String[] args) {
//定义一个方法自己实现toBinaryString方法的效果,将一个十进制整数转成字符串表示的二进制
System.out.println(toBinaryString(123));
//直接调用Integer.toBinaryString方法
System.out.println(Integer.toBinaryString(123));
}
public static String toBinaryString(int number){
//核心逻辑:不断的去除以2,得到余数,一直到尚为0就结束
//还需要把余数倒着拼接起来
//定义一个StringBuilder来拼接余数
StringBuilder sb=new StringBuilder();
//利用循环不断的除以2
while(true){
if(number==0) {
break;
}
//获取余数 %
int remaindar=number%2;
//倒着拼接
//从0开始插入数据
sb.insert(0,remaindar);
//除以2 /
number=number/2;
}
return sb.toString();
}
}