程序代码:
import java.util.Scanner;
public class L {
public static void main(String[] args){
@SuppressWarnings("resource")
Scanner input=new Scanner(System.in);
System.out.print("Enter a hex number:");
String hex=input.nextLine();
System.out.println("The decimal value for hex number "+hex+" is "+hexToDecimal(hex.toUpperCase()));
}
public static int hexToDecimal(String hex){
int decimalValue=0;
for(int i=0;i<hex.length();i++){
char hexChar=hex.charAt(i);
decimalValue=decimalValue*16+hexCharToDecimal(hexChar);
}
return decimalValue;
}
public static int hexCharToDecimal(char ch){
if(ch>='A'&&ch<='F')
return 10+ch-'A';
else
return ch-'0';
}
}
运行结果:
Enter a hex number:12
The decimal value for hex number 12 is 18
心得体会:
字符,字符,千万记得区分数字做字符的区别啊