public static String toString(long num, int radix) {
StringBuilder result = new StringBuilder();
while(true) {
long remainder = num % radix;
result.append(toHexLetter(remainder));
num = num / radix;
if(num == 0) {
break;
}
}
return result.reverse().toString();
}
private static String toHexLetter(long num) {
if(num < 10)
return num + "";
String letter = "";
if(num == 10) letter = "a";
else if(num == 11) letter = "b";
else if(num == 12) letter = "c";
else if(num == 13) letter = "d";
else if(num == 14) letter = "e";
else if(num == 15) letter = "f";
return letter;
}
StringBuilder result = new StringBuilder();
while(true) {
long remainder = num % radix;
result.append(toHexLetter(remainder));
num = num / radix;
if(num == 0) {
break;
}
}
return result.reverse().toString();
}
private static String toHexLetter(long num) {
if(num < 10)
return num + "";
String letter = "";
if(num == 10) letter = "a";
else if(num == 11) letter = "b";
else if(num == 12) letter = "c";
else if(num == 13) letter = "d";
else if(num == 14) letter = "e";
else if(num == 15) letter = "f";
return letter;
}