日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

逻辑与和逻辑或的执行顺序

發布時間:2023/12/14 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 逻辑与和逻辑或的执行顺序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

背景

開發過程中,我們經常用的最多的就是條件表達式了,我們知道&&表示邏輯與,代表兩個條件都必須滿足才會執行。而||代表邏輯邏輯或,即表示兩種只有一個滿足即可。

關于邏輯與和或的執行順序,因為有很長一段時間沒寫代碼了,今天在寫&&和||邏輯時突然有點蒙圈,關于其執行順序稍微有不確定。

邏輯與的順序

當用 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

結論

很明顯,||邏輯或和邏輯與的執行順序也是一樣的,從左到由執行,一旦左邊成立,右邊不會執行判斷。

總結

以上是生活随笔為你收集整理的逻辑与和逻辑或的执行顺序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。