//key & hash are both byte[]
int leftPos = 0, rightPos = 31;
while(leftPos < 16) {
//possible loss of precision. required: byte, found: int
key[leftPos] = hash[leftPos] ^ hash[rightPos];
leftPos++;
rightPos--;
}
Почему побитовая операция над двумя байтами в Java возвращает int? Я знаю, что мог бы просто привести его обратно к байту, но это кажется глупым.