我们知道长的最大值是9223372036854775807。
在我的例子中,我想把这个数字转换成 dec = 11265437495266153437
用这种方法将其转换为十六进制 Integer.toHexString(dec)
任何想法,如何得到这个结果 res = 9C56DFB710B493DD
!
BigInteger::toString( radix )
呼叫 BigInteger::toString
并通过 16
以获得十六进制文本。
具体操作如下。
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
String value =
new BigInteger("11265437495266153437", 10)
.toString(16)
.toUpperCase()
;
System.out.println(value);
}
}
输出
9C56DFB710B493DD
注意,默认的半径是 10
所以你可以跳过它,使用 new BigInteger("11265437495266153437")
取而代之的是没有任何半径参数的。