比较Java中的两个十六进制字符串?

我正在使用Java中的Chord协议实现简单的DHT。详细信息并不重要,但是我要坚持的事情是我需要对字符串进行哈希处理,然后查看一个哈希字符串是否“小于”另一个。

我有一些代码可以使用SHA1计算哈希,该哈希返回40位长的十六进制字符串(在Java中为String类型),例如:

69342c5c39e5ae5f0077aecc32c0f81811fb8193

但是我需要能够比较其中的两个,以便例如:

0000000000000000000000000000000000000000

小于:

FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

这是值的完整范围,因为40位数的字符串实际上代表0123456789ABCDEF范围内的40个十六进制数

有谁知道如何做到这一点?

提前致谢。

回答:

0..9A..F在ASCII字符集中的十六进制数字顺序,因此

string1.compareTo(string2)

应该可以。除非我缺少任何东西。

以上是 比较Java中的两个十六进制字符串? 的全部内容, 来源链接: utcz.com/qa/418689.html

回到顶部