Swift 邏輯運算子

2021-07-13 05:06:34 字數 1571 閱讀 8134

import foundation

/**

邏輯運算是用來判斷一件事情是「成立」還是「不成立」,或者是「真」還是「假」的,判斷的結果只有兩個值,用數字表示就是「1」和「0」。其中「1」表示該邏輯運算的結果是「成立」的,「0」表示這個邏輯運算的結果是「不成立」的。這兩個值成為「;邏輯值」。

邏輯運算子主要用於邏輯運算,包含 「!」(邏輯非)、「&&」(邏輯與)、「||」(邏輯或)、等3種,邏輯運算子的真值表如下:

其中,「!」是單目運算子,而「&&」和「||」是雙目運算子。

邏輯非(!),其結果是運算分量邏輯值的「反」。

邏輯與(&&),僅當兩個運算分量同事為真時,結果才為真;否則,只要其中有乙個為假,結果就為假。

邏輯或(||),只要其中有乙個運算分量為真,結果就為真;僅當兩者同時為假時,結果才為假。

*/1.邏輯非

//邏輯非運算 !a 是對乙個布林值取反,使得true變為false, 或者使false變成true。它是乙個前置運算子,需要出現在運算元之前,而且不需要加空格,讀作非a

let allowedprint = false

if !allowedprintelse

2.邏輯與

//邏輯與 a&&b 表達了只有a和b的值都為true時,整個表示式的值才會是true。只要任意乙個為false,整個表示式的值就為false。

let account = true

//賬號正確

let password = false

//密碼錯誤

if account && passwordelse

//事實上,如果第乙個值為false,那麼就不需要取計算第二個值了,因為第二個值已經不能影響表示式的結果了。這種設計被稱作為「短路計算」

3.邏輯或

//邏輯或 a||b 它表示了兩個邏輯表示式的其中乙個為true,那麼整個表示式就為true。同邏輯與相似,邏輯或也是「短路計算」的,當左端的表示式為true時,就不計算右邊的表示式了,直接反饋給true,因為他不可能改變整個表示式的值了。

let hasdoorkey = false

//沒有鑰匙

let knowspassword = true

//知道密碼

if hasdoorkey || knowspasswordelse

4.組合邏輯

//在邏輯運算中允許組合多個邏輯運算來表達乙個符合邏輯

let cardaccount = true

//卡號是對的

let cardpassword = false

//忘記了密碼 密碼是錯誤的

let hasidcard = true

//擁有身份證 可以補辦卡

if cardaccount && cardpassword || hasidcardelse

Swift關係運算子和邏輯運算子

關係運算子是比較兩個表示式大小關係的運算,它的結果是true或false,即布林型資料。如果表示式成立 結果為true,為false。關係運算子有8種 和 以let a 6為例。具體說明參見表3 3。表3 3 關係運算子 運算子名稱 例子結果 等於a 4 false 不等於a 4 true 大於a ...

邏輯運算子( , )

操作!是的 運算子不執行布林操作,有只有乙個運算元,位於其權利,和唯一,它確實是逆是它的價值,生產假如果真實,真實的,如果其運算元其運算元為false。基本上,它返回布林值,評價其運算元相反。例如 1 2 3 4 5 5 evaluates to false because the expressi...

邏輯運算子

邏輯運算子 符號 作用 符號 作用 或and 與 或 not 非 或or 或 xor 異或 與 運算 1 或者 and 是 與 運算的兩種表達方式。如果所有資料不為0且不為空值 null 則結果返回1 如果存在任何乙個資料為0,則結果返回0 如果存在乙個資料null且沒有資料為0,結果返回null。...