2010-10-24 24 views

回答

4

這是一個雙重否定或雙重的一些調用它(可能/可能其他名稱以及),它獲取屬性並將其轉換爲布爾值。第一個!取值的倒數 - 導致一個布爾值,然後第二個取的倒數,所以你得到一個布爾返回,這是原始的表示,而不是原始的倒置。

+0

+1,即使問題是重複的,說得好 – galambalazs 2010-10-24 21:17:39

2

這是一種將布爾型可轉換非布爾型轉換爲實際布爾型的習慣方法。例如,0是數字類型,但也被認爲是等同於布爾值「False」的真值。否定是一種漸開線操作(即它自身反轉),所以通過使用雙重否定,我們得到相同的真值返回,但本機布爾類型。

具體而言,考慮!(!0),其計算結果爲!(True)(如!0爲True),它的計算結果爲False - 相同的真值0,但現在真正的布爾值。