您的位置:首页 > 编程语言 > Java开发

java实现:十六进制转换十进制

2015-12-14 14:56 429 查看
import java.util.*;
public class HextoDecimal {
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.println("please input a Hex");
String s = in.nextLine();
/*toUpperCase先将字符串全部转换成大写,方便将每个字符转换为十进制的数字*/
System.out.println(s + "'s decimal is " + hexTranslateToDecimal ( s.toUpperCase() ) );
}
public static int hexTranslateToDecimal(String s)
{
int decimal = 0;
for( int i = 0; i < s.length(); i++)
{
char hexChar = s.charAt(i);
//          System.out.println(hexChar); 对于字符串'A32',charAt(0)是A,charAt(1)是3...
decimal = decimal * 16 + hexCharToDecimal(hexChar);  /*使用递归*/
}
return decimal;
}
public static int hexCharToDecimal(char hexChar)
{
if (hexChar >= 'A' && hexChar <= 'F' )
return hexChar - 'A' + 10 ;
else
return  hexChar - '0';
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java