Я вычисляю XOR
из двух short integers
используя XOR ^
Оператор традиционной моды. Ниже ме-XOR двух коротких целых чисел
short a=197;
short b=341;
short y = (short) (a^b);
Однако XOR всегда возвращается целое число, но в моем случае входы короткое целое, поэтому я литье короткое замыкание на выходе XOR. XOR можно рассчитать по-разному (пример: с использованием BigInteger
и т. Д.), Но с точки зрения производительности (меньше времени), что является лучшим для коротких целых чисел? Помня о производительности, следует ли сначала преобразовать каждое короткое целое число в двоичный номер с помощью Integer.toBinaryString(number)
, а затем применить побитовое XOR?
@EricJ .: Вы все еще смотрели версию, где у меня не было круглых скобок вокруг '(x^y)'? Я исправил это некоторое время назад :) –
Да, я вижу обновление. Вывод комментария :-) –
@JonSkeet: «Преобразовать каждое короткое целое число в двоичное число» «Я имел в виду, что должен сначала преобразовать каждое короткое целое в двоичную строку с помощью« Integer.toBinaryString (number) », а затем применить« побитовый XOR » ? –