![](/img/trans.png)
[英]Java : String a = Integer.toString(1); creates how many objects?
[英]How to Convert an Integer to a String without Integer.toString Function [on hold]
这是我之前的问题的扩展,但我需要在没有这个 function 的情况下解决这个问题。 我必须只使用递归。 有什么想法吗?
一个例子; 20A 将是:
2 x 12^2 + 0 x 12^1 + 10 x 12^0 = 2 x 144 + 0 x 12 + 10 x 1 = 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 有一种方法来请求给定索引处的字符。 现在,该字符串中 position '9' 的数字是多少? 10点是什么? 确切地。 这个方法是charAt
。
我打赌你可以用这个提示完成这个作业:)
稍加思考,您可以扩展它以转换从 2 到 16 的任何基数。
base
或radix
digits
字符串定义为"0123456789ABCDEF"
radix
在允许的范围内。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.