2010-11-10 3 views
0

Beaucoup de temps j'ai une logique inverse entre mes formes et données, je cherche la manière la plus simple (la plus élégante) de changer un booléen de vrai à faux et vice versa.
Je sais que beaucoup de gens vont se Angy si voir le code comme ceci:Un moyen facile de changer la valeur de bolean

if (c) 
{ 
return false; 
} 
else 
{ 
return true; 
} 

Ou quelque chose comme ça

EDIT:

Je suis désolé, mon erreur Mon exemple de code n'est pas bien.
Ce que je dois faire si je VONT juste utiliser la valeur inverse de booléenne

myMethod(!op.checkBoxSamoSaKol.Checked) // Is this possibile 
+0

Ofcourse il est possible. –

+0

Avez-vous déjà essayé? Votre exemple de code doit compiler correctement. –

+0

@ Øyvind Bråthen Oui je l'ai fait mais entre j'ai déjà édité ma question, et je n'ai pas l'habitude de l'éditer à nouveau – adopilot

Répondre

11

Je pense que vous trouverez que cela s'appelle l'opérateur 'not'.

return !CheckBoxOnContolOnForm.Checked; 
4

Si vous voulez revenir, faire juste comme ça

return CheckBoxOnContolOnForm.Checked; 

Si vous voulez inverser une valeur booléenne , le plus simple est cette syntaxe:

myBool = !myBool; 

EDIT

Dans votre cas, je vois que vous voulez retourner false si elle est cochée. Dans ce cas, il devrait être écrit comme ceci:

return !CheckBoxOnContolOnForm.Checked; 
0

La meilleure expression possible serait (comme Øyvind Bråthen) proposé comme suit

return !CheckBoxOnContolOnForm.Checked; 
Questions connexes