当前位置: 首页 > 图文教程 > Java技术 > Java基础 > Java基础:小编教大家十进制数转十六进制数的算法
本例小编将介绍十进制数转十六进制数的算法。虽然是很基础的东西,但是也希望对大家有所帮助。因为Java基础很重要。
十进制数转换为十六进制数的方法与以上两种的转换方法相似,不同之处除了除数改为16外,还需要将余数为10-15的数改为A-F的形式。例如,十进制数为2604,则计算十六进制数的方法如下:
2604/16=162(商)…….12(余数)//余数12对应C;商大于0,则继续除以6;
162/16=10(商)……..2(余数)//余数为2;商大于0,则继续除以6;
10/16=0(商)………10(余数)//余数10对应A;商等于0,结束。
所以2604的十六进制数为A
代码如下:
//十进制转十六进制数
Public string DtoX(int d)
{
String x=””;
If(d<16)
{
x=chang(d);
}
Else
{
Int c;
Int s=0;
Int n=d;
While(n>=16)
{
s++;
n=n/16;
}
String [] m=new string[s];
Int i=0;
do
{
c=d/16;
m[i++]=change(d%16);//判断是否大于10,如果大于10,则转换为A-F的格式
d=c;
}while(c>=16);
x=chang(d);
for(int j=m.Length-1;j>=0;j--)
{
x+=m[j];
}
}
return x;
}
//判断是否为10-15之间的数,如果是则进行转换
Public string chang(int d)
{
String x=””;
Switch(d)
{
Case10:
x=”A”;
break;
Case11:
x=”B”;
break;
Case12:
x=”C”;
break;
Case13
x=”D”;
break;
Case14:
x=”E”;
break;
Case15:
x=”F”;
break;
default:
x=d.ToString();
break;
}
return x;
}
评论 (0) All