Как я могу сделать это быстро?
Конечно, я могу сделать это:
static bool ByteArrayCompare(byte[] a1, byte[] a2)
{
if (a1.Length != a2.Length)
return false;
for (int i=0; i<a1.Length; i++)
if (a1[i]!=a2[i])
return false;
return true;
}
Но я ищу либо функцию BCL , либо какой-нибудь высоко оптимизированный проверенный способ сделать это.
java.util.Arrays.equals((sbyte[])(Array)a1, (sbyte[])(Array)a2);
работает хорошо, но не похоже, что это будет работать для x64.
Обратите внимание на мой сверхбыстрый ответ здесь .