0

可以通过从基数 10 进行基数转换来做到这一点吗?如果是这样,为了将生成的字符串的长度限制为最多 10 个字符,最好转换到哪个基础?

谢谢

4

2 回答 2

0

十六进制将满足您的需求。

999999999999十六进制中最大的 12 位数字e8d4a50fff只有十个字符。

于 2013-03-04T14:18:20.267 回答
0

以 10 为底的最大 12 个字符的数字是 999 999 999 999。

ruby 中的一个小片段显示,您可以用来确保有 10 个字符的字符串的最小基数是基数 16,或十六进制:

1.9.3-p194 :044 > 999999999999.to_s(15)
 => "1b02b766469" 
1.9.3-p194 :045 > 999999999999.to_s(15).length
 => 11 
1.9.3-p194 :046 > 999999999999.to_s(16)
 => "e8d4a50fff" 
1.9.3-p194 :047 > 999999999999.to_s(16).length
 => 10 
于 2013-03-04T14:21:22.950 回答