我刚接触Groovy。当我想将一些整数转换为十六进制字符串时,我尝试了以下代码:
theNumber.toString(16)
就像我在JavaScript中所做的那样。(Groovy就像另一种类似于Java的脚本语言,对吧?)
但是上面的代码并不能按照我的期望工作。当数字非常大时,结果是正确的;但是大多数情况下,它只返回16。
println(256.toString(16)) // 16
println(36893488147419103232.toString(16)) // 20000000000000000
我很困惑为什么Groovy的行为如此奇怪。有人能帮忙解释一下吗?另外,将整数转换为十六进制字符串的最佳方法是什么?
谢谢。
256.toString(16)
返回16
而不是100
? - tsh