Ответ 1
bool xorValue = bool1 ^ bool2;
Учитывая два булевых метода, как выбрать наиболее элегантный один вкладыш, который вычисляет операцию XOR в С#?
Я знаю, что это можно сделать с помощью комбинации switch
или if
else
, но это сделает мой код довольно уродливым.
bool xorValue = bool1 ^ bool2;
Хорошо добавить некоторый контекст: Вы можете посмотреть здесь Таблицы
Там вы можете видеть, что "эксклюзивный" или "в основном такой же, как" не равно ". Поэтому вы можете просто использовать это (с булевым):
if( X != Y )...
Но если вы хотите прямо показать людям, что вы имеете в виду "XOR", просто используйте другие ответы здесь.
С# имеет логический оператор XOR ^
. Вот как вы это делаете.
bool result = x^y //x XOR y
Я думаю, что это должно помочь:
A ^ B ? TrueOperation() : FalseOperation();