java-十进制转二进制的另一种方法

思想:十进制数在商不等于零的循环条件下不断除以2并取余数保存。

class ToBinary 
{
	public static void main(String[] args) 
	{
		toBinary_1(-6);
		//System.out.println("Hello World!");
	}
	//方法1——除以2取余
	public static void toBinary(int num){
		char[] chs={'0','1'};
		char[] arr=new char[32];
		int i=0;
		while(num!=0){
			int temp=num%2;
			arr[i++]=chs[temp];
			num=num/2;
		}
		for(int j=i-1;j>=0;j--)
			System.out.print(arr[j]);
	}
	//方法2——&1,右移1位
	public static void toBinary_1(int num){
		char[] chs={'0','1'};
		char[] arr=new char[32];
		int i=0;
		while(num!=0){
			int temp=num&1;
			arr[i++]=chs[temp];
			num=num>>>1;
		}
		for(int j=i-1;j>=0;j--)
			System.out.print(arr[j]);
	}
}


你可能感兴趣的:(java,十进制转二进制)