逻辑与和逻辑或的执行顺序
生活随笔
收集整理的這篇文章主要介紹了
逻辑与和逻辑或的执行顺序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
背景
開發過程中,我們經常用的最多的就是條件表達式了,我們知道&&表示邏輯與,代表兩個條件都必須滿足才會執行。而||代表邏輯邏輯或,即表示兩種只有一個滿足即可。
關于邏輯與和或的執行順序,因為有很長一段時間沒寫代碼了,今天在寫&&和||邏輯時突然有點蒙圈,關于其執行順序稍微有不確定。
邏輯與的順序
當用 if (A && B ) { // 代碼執行 } 這一樣代碼時,會先執行邏輯A,如果A是真的話,此時if判斷邏輯成立,不會執行邏輯B,直接進入代碼區執行。如果A是假,那會繼續執行判斷B,如果B是真,此時,此時if判斷邏輯成立并進入代碼區執行。
這樣的判斷邏輯,應該是我們經常會用到的,可以100%確認,其執行順序是從左到右,左邊只要一成立,右邊不會執行。
邏輯或的順序
那么對于邏輯或的執行順序呢是否也一樣,因為邏輯或成立只要兩者其中一個是真就if判斷成立,所以此時我有點不是很確信它的執行邏輯是否也是從左到右,一旦成立就右邊不執行。
我們直接用代碼來驗證下吧。(以下是用OC方法驗證的,像其他語言如Java、JavaScript、C等邏輯都是一樣的)
- (void)demo1{if ([self function1] || [self function2]) {NSLog(@"邏輯1");} else {NSLog(@"邏輯2");} }- (BOOL)function1{NSLog(@"%s",__FUNCTION__);return YES; }- (BOOL)function2{NSLog(@"%s",__FUNCTION__);return NO; }看下控制器Log輸出
2022-04-02 21:38:57.445827+0800 test[1321:2488493] -[ViewController function1] 2022-04-02 21:38:57.445984+0800 test[1321:2488493] 邏輯1結論
很明顯,||邏輯或和邏輯與的執行順序也是一樣的,從左到由執行,一旦左邊成立,右邊不會執行判斷。
總結
以上是生活随笔為你收集整理的逻辑与和逻辑或的执行顺序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Oracle 数据库一体机:zData
- 下一篇: 图片码