直奔主题,上代码:
import java.util.Arrays;
public class Test {
/**
* @param n: a decimal number
* @param k: a Integer represent base-k
* @return: hexConversion
*/
public static String hexConversion(int n, int k) {
//余数
int a;
StringBuffer t = new StringBuffer();
do {
char S;
a = n % k;
n = n / k;
if (a >= 0 && a < 10) {
S = (char) (a + '0');
} else {
//大于9的数用字母代替
S = (char) (a + 'A' - 10);
}
t.append(S);
}
while (n != 0);
//第一种
/* String s = t.toString();
char[] ch;
ch = s.toCharArray();
for (int i = 0; i < ch.length / 2; i++) {
char c = ch[i];
ch[i] = ch[ch.length - 1 - i];
ch[ch.length - 1 - i] = c;
}
return Arrays.toString(ch);*/
//第二种
//return t.reverse().toString();
//第三种
String s = t.toString();
char[] array = s.toCharArray();
String reverse = ""; //新建空字符串
for (int i = array.length - 1; i >= 0; i--)
reverse += array[i];
return reverse;
}
public static void main(String[] args) {
Test test = new Test();
//测试
String s = test.hexConversion(30, 16);
System.out.println(s);
}
}
运行截图: