web-dev-qa-db-fra.com

XOR Opération pour deux champs booléens

Étant donné deux booléens, comment trouver le plus élégant n liner qui calcule l'opération XOR en C #?

Je sais que l'on peut le faire en combinant switch ou ifelse mais cela rendrait mon code plutôt moche.

47
Graviton
bool xorValue = bool1 ^ bool2;
71
Ronald Wildenberg

Ok pour ajouter du contexte: vous pouvez regarder ici Tables

Là, vous pouvez voir que "exclusif ou" est fondamentalement le même que "différent". Vous pouvez donc simplement utiliser ceci (avec booléen):

if (X != Y)...

Mais si vous voulez montrer directement aux gens que vous voulez dire "XOR", utilisez simplement les autres réponses ici.

64
InsertNickHere

C # a logique XOR^. Voici comment procéder.

bool result = x ^ y // x XOR y
18

Je pense que cela devrait aider:

A ^ B ? TrueOperation() : FalseOperation();
0
Jalal