将 Java 中的大数转换为十六进制
Convert a large number to hex in Java
据我们所知,long 的最大值为 9223372036854775807
在我的例子中,我想使用此方法 Integer.toHexString(dec)
将此数字 dec = 11265437495266153437
转换为十六进制
知道如何得到这个结果 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")
代替,它没有任何基数参数。
据我们所知,long 的最大值为 9223372036854775807
在我的例子中,我想使用此方法 Integer.toHexString(dec)
dec = 11265437495266153437
转换为十六进制
知道如何得到这个结果 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")
代替,它没有任何基数参数。