字节数组的Java比较器(字典)

2022-01-25 00:00:00 sorting compare collections java map

我有一个带有 byte[] 键的哈希图.我想通过 TreeMap 对其进行排序.

I have a hashmap with byte[] keys. I'd like to sort it through a TreeMap.

实现字典顺序比较器最有效的方法是什么?

What is the most effective way to implement the comparator for lexicographic order?

推荐答案

使用Guava,可以使用任一个:

Using Guava, you can use either of:

  • UnsignedBytes.lexicographicalComparator()
  • SignedBytes.lexicographicalComparator()

UnsignedBytes 比较器似乎具有使用 Unsafe 的优化形式,它会尽可能使用它.代码中的注释表明它可能至少是普通 Java 实现的两倍.

The UnsignedBytes comparator appears to have an optimized form using Unsafe that it uses if it can. Comments in the code indicate that it may be at least twice as fast as a normal Java implementation.

相关文章