版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34231010/article/details/78619346
将十进制数转换为n(2<=n<=16)进制数,原理跟数学上的转换方法相同,即对一个数不断的进行除n取余运算,直至商为0,将余数倒序排出即为转换结果。
以下是递归代码:
// 2-16进制表示的位数
public String[] arr = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
"A", "B", "C", "D", "E", "F"};
// 转换结果
public String conversion = "";
/**
* @param number 要转换的十进制数
* @param system 转换的进制位
*/
public void convert(int number, int system) {
conversion = arr[number % system] + conversion;
if(number/system==0) return;
convert(number/system, system);
}