以前将十六进制转换成十进制,总是先将十六进制转换成二进制,然后再转换成十进制。今天看到一个题目:将一个十六进制的数转换成一个整数。在网上搜寻,发现除了这样转换以外,还可以像二进制转换成十进制一样,比如:二进制110,转换成十进制就可以是1*2^2+1*2^1+0*2^0 = 6;其实十六进制转换成十进制同理:
如:F5,转换成十进制为:F(15)*16^1+5*16^0 = 245;
这样 将一个十六进制的数转换成一个十进制的数就好写代码了:
String str = “13abf”;
intlen = str.length;
intsum = 0;
for(inti=0;i<len;i++){
char c = str.charAt(len-1-i);
int n = Character.digit(c,16); //计算c的16进制的数值
sum += n * (1<<(4*i));
}
本文介绍了一种直接将十六进制数转换为十进制数的方法,并通过实例演示了具体的转换过程。同时,提供了Java代码实现,帮助读者更好地理解和应用这一转换技巧。
1026

被折叠的 条评论
为什么被折叠?



