【发布时间】:2011-10-05 16:05:10
【问题描述】:
我有一个表示 2 的补码的十六进制字符串。有没有一种简单的方法(库/函数)可以将十六进制转换为十进制而不直接使用它的位??
例如这是给定左侧十六进制的预期输出:
"0000" => 0
"7FFF" => 32767 (max positive number)
"8000" => -32768 (max negative number)
"FFFF" => -1
谢谢!
【问题讨论】:
-
如果你知道如何获得一个无符号数,那么如果值大于 32767,则只需减去 65536
-
起初我说的是 Integer.parseInt 但后来意识到它的 2 的恭维。所以我删除了我的答案。
标签: java hex twos-complement negative-number