Java有效地比较相同大小的字节数组的位

时间:2017-08-10 18:26:55

标签: java arrays performance bit-manipulation

如何有效地比较两个大小相等byte[]的Java?可以通过从给定数组构造它们来使用BitSet,但是这种方法不像使用位操作和位掩码移位数组那样高效。什么是实施是一样的?

1 个答案:

答案 0 :(得分:0)

  • 通过从第一个数组读取64位块来创建一个long值;
  • 通过从第二个数组中读取64位块来创建另一个长值;
  • 如果两个长片的XOR不为0,则这些块有一些不同的值;
  • 如果你完成了整个数组的长度并且所有的XOR都是0,则数组是相同的。