中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

第十一節 邏輯操作符

發布時間:2020-07-27 06:31:16 來源:網絡 閱讀:290 作者:habout632 欄目:移動開發

本文來自于瘋子們的開源圖書

邏輯操作符用于修改或者組合布爾邏輯值truefalse。Swift支持C語言當中的三個標準邏輯操作符:

  • 邏輯非(!a)

  • 邏輯與(a&&b)

  • 邏輯或(a||b)

邏輯非操作符

邏輯非操作符翻轉一個布爾值,即將true變成false,false變成true.

邏輯非是一個前序操作符,后面緊跟著要操作的值,中間沒有空白。可以讀作"非a",就像下面的例子一樣:

第十一節 邏輯操作符

表達式if !allowedEntry可以讀作“if not allowed entry”.只有當"not allowed entry'是true的時候,接下來的代碼才會執行。即 allowedEntry 是false.

就像上面的例子一樣,仔細的選擇一下邏輯變量和常量的名字有助于代碼的簡潔和可讀性,從而可以避免雙重否定或者令人混淆的邏輯語句。

邏輯與操作符

由邏輯與操作符(a&&b)構成的邏輯表達式只有當兩個值都是true的時候,整個表達式才是true

只要其中的一個為false的話,整個表達式就是false.事實上,如果第一個值為false,第二個值也不會計算的,因為整個表達式的值已經不可能為true了。這就是所謂的短路法則。

下面的例子會考慮兩個Bool值的,只有當兩個都為true的時候,才可以進門去:

第十一節 邏輯操作符

 

邏輯或操作符

邏輯或(a||b)操作符是由兩個豎杠構成的中序操作符。由邏輯或操作符構成的邏輯表達式只要有一個的值為true,整個表達式的值就為true.

就像上面的邏輯與操作符,邏輯或操作符也使用短路法則計算表達式的值。如果邏輯或操作符左側的值為true,

那么右側的值也不會計算了,因為已經不可能影響到整個表達式的結果了。

在下面的例子中,第一個布爾值(hasDoorKey)為false,但是第二個值(knowsOverridePassword)為true,由于有一個值為true,整個表達式的值也為true,可以進門了:

第十一節 邏輯操作符

組合使用邏輯操作符

你可以組合使用多個邏輯操作符來構成一個更長的復合表達式:

第十一節 邏輯操作符

這個例子中使用了多個&&||操作符構成了一個更長的復合表達式。不過&&,||仍然是二元操作符,因此實際上這個表達式就是由三個更小的表達式構成的而已。可以讀作:

如果我們輸入了正確的進入碼,并且通過了視網膜掃描;或者我們有能開門的鑰匙;或者我們知道緊急通行密碼,那么我們都可以進門。

根據的值,雖然前兩個子表達式的值都為為false.不過緊急通行密碼是已知的,整個表達式的值就是true.

括號

雖然有些地方沒有強制使用括號,但是有時候使用一下括號還是很有用的,它可以使得一個復雜表達式的含義更容易閱讀。還是上面進門的例子,在復合表達式的第一部分上添加括號可以使得他的含義更加的清晰:

第十一節 邏輯操作符

在前兩個值上添加括號可以使得他們作為一個整體的來看待。整個表達式的值沒有變,但是真個表達式的含義更易于閱讀了。可讀性永遠比簡潔性更重要。盡量適當的使用一下括號,表達式的含義會更加的清晰。

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乐清市| 道孚县| 阿瓦提县| 贵溪市| 同仁县| 富蕴县| 玛多县| 安化县| 太和县| 子长县| 平潭县| 西充县| 漯河市| 广宗县| 宁明县| 黄陵县| 神池县| 湖南省| 汶川县| 绥阳县| 临沭县| 龙门县| 海安县| 洛川县| 竹北市| 西和县| 四平市| 黄龙县| 武宣县| 奈曼旗| 巴楚县| 常德市| 曲周县| 台南县| 通海县| 滨州市| 黄大仙区| 江达县| 延寿县| 武胜县| 北宁市|