public class Trans2Ten {
public static void main(String[] args) {
long l = sixteen2ten("11e1-c418-a000039f-baac-7596f0d041ff");
System.out.println("十进制:" + l);
}
public static long sixteen2ten(String str) {
long result = 0;
String a = "";
String[] b = str.split("-");
for (int i = 0; i < b.length; i++) {
a += b[i];
}
for (int j = 0; j < a.length(); j++) {
if (getSix(a.charAt(j)) == 0) {
continue;
} else {
result += getSix(a.charAt(j))
* Math.pow(16, (a.length() - 1 - j));
}
}
System.out.println("十六进制:" + a);
return result;
}
public static long getSix(char c) {
switch (c) {
case '0':
return 0;
case '1':
return 1;
case '2':
return 2;
case '3':
return 3;
case '4':
return 4;
case '5':
return 5;
case '6':
return 6;
case '7':
return 7;
case '8':
return 8;
case '9':
return 9;
case 'a':
return 10;
case 'b':
return 11;
case 'c':
return 12;
case 'd':
return 13;
case 'e':
return 14;
case 'f':
return 15;
default:
return 0;
}
}
}