------ <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! --
public class 进制转换 {
public static void main(String[] args)
{
//toBin(10);//十进制-》二进制
System.out.println(Integer.toBinaryString(60));//60的二进制表示
toHex(60);
toHex_2(80);
}
/*
*十进制-》二进制
*/
public static void toBin (int num)
{
StringBuffer sb=new StringBuffer();
while(num>0)
{
//System.out.print(num%2); //打印出来的方式是倒着的
sb.append(num%2); //添加字符串
num=num/2;
}
System.out.println(sb.reverse()); //reverse有反转的功能
}
/*
* 十进制-》十六进制
*/
public static void toHex (int num)
{
StringBuffer sb=new StringBuffer();
for(int x=0;x<8;x++)
{
int temp=num&15;
if(temp>9)
//System.out.println((char)(temp-10+'A'));
sb.append((char)(temp-10+'A'));
else
//System.out.println(temp);
sb.append(temp);
num=num >>> 4;
}
System.out.println(sb.reverse()); //reverse有反转的功能
}
//查表法,十进制转成十六进制
public static void toHex_2(int num)
{/*
char[] chas={'0','1','2','3','4','5',
'6','7','8','9','A','B','C','D',
'E','F'};
StringBuffer sb=new StringBuffer();
for (int x=0;x<8;x++)
{
int temp = num &15;
sb.append(chas[temp]);
num=num>>>4;
}
System.out.println(sb.reverse());
*/
char[] chas={'0','1','2','3','4','5',
'6','7','8','9','A','B','C','D',
'E','F'};
//定义一个临时数组
char[] arr = new char[8];
for (int x=0;x<8;x++)
{
int temp = num &15;
arr[x]=chas[temp];
num=num>>>4;
}
//存储数据的arr数组遍历
for(int x=arr.length-1;x>=0;x--)
{
System.out.print(arr[x]);
}
}
}
public static void main(String[] args)
{
//toBin(10);//十进制-》二进制
System.out.println(Integer.toBinaryString(60));//60的二进制表示
toHex(60);
toHex_2(80);
}
/*
*十进制-》二进制
*/
public static void toBin (int num)
{
StringBuffer sb=new StringBuffer();
while(num>0)
{
//System.out.print(num%2); //打印出来的方式是倒着的
sb.append(num%2); //添加字符串
num=num/2;
}
System.out.println(sb.reverse()); //reverse有反转的功能
}
/*
* 十进制-》十六进制
*/
public static void toHex (int num)
{
StringBuffer sb=new StringBuffer();
for(int x=0;x<8;x++)
{
int temp=num&15;
if(temp>9)
//System.out.println((char)(temp-10+'A'));
sb.append((char)(temp-10+'A'));
else
//System.out.println(temp);
sb.append(temp);
num=num >>> 4;
}
System.out.println(sb.reverse()); //reverse有反转的功能
}
//查表法,十进制转成十六进制
public static void toHex_2(int num)
{/*
char[] chas={'0','1','2','3','4','5',
'6','7','8','9','A','B','C','D',
'E','F'};
StringBuffer sb=new StringBuffer();
for (int x=0;x<8;x++)
{
int temp = num &15;
sb.append(chas[temp]);
num=num>>>4;
}
System.out.println(sb.reverse());
*/
char[] chas={'0','1','2','3','4','5',
'6','7','8','9','A','B','C','D',
'E','F'};
//定义一个临时数组
char[] arr = new char[8];
for (int x=0;x<8;x++)
{
int temp = num &15;
arr[x]=chas[temp];
num=num>>>4;
}
//存储数据的arr数组遍历
for(int x=arr.length-1;x>=0;x--)
{
System.out.print(arr[x]);
}
}
}
------ <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! --