两种方法把10进制转化为16进制查表法第二种


//第一种方法,用了StringBuffer是最简单的一种写法。
public class Demo
{
public static void main(String[] args){


System.out.print(toHex(60));
}
public static StringBuffer toHex(int num){//类型为StringBuffer!
StringBuffer sb=new StringBuffer();
for(int i=1;i<=8;i++){
int temp=num&15;//取num后四位二进制数
if(temp>10){
sb.append((char)(temp-10+'a'));//如果将四位二进制数转化为六进制数
}else{
sb.append(temp);//StringBuffer.append把字符加入字符串
}
num=num>>>4;}//无符号位移4位
return sb;
}

}

//第二种方法,用了数组转变十六进制的输出顺序,还用了查表法简化流程,a【】与b【】的类型要注意是字符型。

//需求,能够把10进制转化为16进制的函数。
public class Demo5
{
public static void main(String[] args){
System.out.print(toHex(60));

}
public static StringBuffer toHex(int num){
StringBuffer s=new StringBuffer();
char[] a={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
char[] b=new char[8];
int l=b.length;
while(num!=0){
int temp=num&15;
b[--l]=a[temp];
num=num>>>4;
}
for(int i=l;i<b.length;i++){
s.append(b[i]);
}
return s;
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值