gpt4 book ai didi

Java - 将无符号的十六进制字符串解析为带符号的长

转载 作者:太空狗 更新时间:2023-10-29 22:37:51 27 4
gpt4 key购买 nike

我有一堆十六进制字符串,例如其中一个是:

  d1bc4f7154ac9edb

这是“-3333702275990511909”的十六进制值。这与执行 Long.toHexString("d1bc4f7154ac9edb"); 时得到的十六进制相同;

现在,让我们假设我只能访问十六进制字符串值,仅此而已。这样做:

  Long.parseLong(hexstring, 16);

不起作用,因为它会将其转换为对于 Long 而言太大的不同值。是否可以将这些无符号的十六进制值转换为有符号的长整数?

谢谢!

最佳答案

您可以使用 BigInteger解析它并取回一个long:

long value = new BigInteger("d1bc4f7154ac9edb", 16).longValue();
System.out.println(value); // this outputs -3333702275990511909

关于Java - 将无符号的十六进制字符串解析为带符号的长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5723579/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com