Java 如何在没有Integer.toString函数的情况下将整数转换为字符串

Java 如何在没有Integer.toString函数的情况下将整数转换为字符串,java,recursion,Java,Recursion,这是我之前问题的扩展,但我需要在没有这个函数的情况下完成这个问题。我只能使用递归。有什么想法吗 一个例子;20A将是: 2x12^2+0x12^1+10x12^0=2x144+0x12+10x1=288+0+10=298 public class Duodecimal { public static String toBase12(int n) { if (n < 10) return Integer.toString(n);

这是我之前问题的扩展,但我需要在没有这个函数的情况下完成这个问题。我只能使用递归。有什么想法吗

一个例子;20A将是:

2x12^2+0x12^1+10x12^0=2x144+0x12+10x1=288+0+10=298

public class Duodecimal {
      public static String toBase12(int n) {
        if (n < 10)
            return Integer.toString(n);
        if (n == 10)
            return "A";
        if (n == 11)
            return "B";
        return toBase12(n / 12) + toBase12(n % 12);
      }
    }

好吧,你已经算出了n==10。对于n==9,您当然可以使用相同的技术。如果你想要另一个想法,想象你有字符串“0123456789AB”。String有一个方法来请求给定索引处的字符。现在,在这个字符串的“9”位置是什么数字?10点是几点?确切地这种方法很简单


我打赌你可以用这个提示来完成这个家庭作业:

稍加思考,你可以扩展它来转换从2到16的任何基数

向方法添加第二个参数,并将其称为base或radix 将最后一个数字字符串定义为0123456789ABCDEF 进行适当的检查,以确保基数在允许范围内。
将Integer.toString替换为+nI我认为您应该尝试解决您的问题