进制转换
十六进制转十进制
import java.util.Scanner;
import java.lang.Math;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
String str = sc.nextLine();
transfer(str);
}
}
public static void transfer(String str){
// 先定义好int数组
int[] arr = new int[str.length()-2];
// 把字符串的前两位截取,也可以放在swith条件里
str = str.substring(2,str.length());
int res = 0;
for(int i=0;i<str.length();i++){
switch(str.charAt(i)){
case 'A':
arr[i] = 10;
break;
case 'B':
arr[i] = 11;
break;
case 'C':
arr[i] = 12;
break;
case 'D':
arr[i] = 13;
break;
case 'E':
arr[i] = 14;
break;
case 'F':
arr[i] = 15;
break;
default:
// 多次出错在char转换成int的环节,牢记一种写法
arr[i] = Integer.parseInt(String.valueOf(str.charAt(i)));
}
// 注意是pow函数,还有算好位置
res+= arr[i] * Math.pow(16,arr.length-i-1);
}
System.out.println(res);
}
}