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