2010-11-10 65 views
0

很多時間我有我的形式和數據之間的反邏輯,我正在尋找最簡單(最優雅)的方式來改變一些布爾從真到假,反之亦然。
我知道,如果看到這樣的代碼,很多人會得到ANGY:簡單的方法來改變布爾值

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

或者像這樣

編輯:

我很抱歉,我的錯我的代碼示例不好。
我需要做的。如果我vont如果你想回到剛纔使用布爾

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

Ofcourse它是可能的。 – 2010-11-10 10:50:07

+0

你甚至試過了嗎?你的代碼示例應該編譯得很好。 – 2010-11-10 10:53:35

+0

@ØyvindBråthen是的我已經做了,但在我之間我已經編輯了我的問題,我不會再編輯它 – adopilot 2010-11-10 10:56:23

回答

11

我想你會發現那叫做'not'操作符。

return !CheckBoxOnContolOnForm.Checked; 
4

的倒數什麼,只是做了這樣的

return CheckBoxOnContolOnForm.Checked; 

如果要反轉布爾值,最簡單的就是這句法:

myBool = !myBool; 

編輯

在你的情況,我看到你想要返回false,如果它被檢查。在這種情況下,它應該這樣寫:

return !CheckBoxOnContolOnForm.Checked; 
0

可能的最佳表達是(如的ØyvindBråthen如此闡述道)建議如下

return !CheckBoxOnContolOnForm.Checked;