欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

c#中(&&,||)與(&,|)的區(qū)別詳解

 更新時間:2019年12月23日 11:23:19   作者:盛開的雨季  
這篇文章主要介紹了c#中(&&,||)與(&,|)的區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

對于(&&,||),運算的對象是邏輯值,也就是True/False

&&相當(dāng)與中文的并且,||相當(dāng)于中文的或者 。(叫做邏輯運算符又叫短路運算符)

運算結(jié)果只有下列四種情況。

True  && True  = True    (左邊為true,再驗證右邊也為true,返回結(jié)果true)假如這是一個查詢條件,則執(zhí)行。
True  && False = False   (左邊為true,再驗證右邊為false,返回結(jié)果false)假如這是一個查詢條件,不執(zhí)行。
False && True  = False   (左邊為false,發(fā)生短路現(xiàn)象。右邊不再執(zhí)行,直接返回false).........同樣不執(zhí)行。
False && False = False   (同上)
True  || True  = True    (左邊為true,發(fā)生短路現(xiàn)象,右邊不執(zhí)行,直接返回true).......執(zhí)行
True  || False = True    (左邊為true,發(fā)生短路現(xiàn)象,右邊不執(zhí)行,直接返回true).......執(zhí)行
False || True  = True    (左邊為false,再驗證右邊為true,返回結(jié)果true)............執(zhí)行
False || False = False   (左邊為false,再驗證右邊也為false,返回結(jié)果false).......不執(zhí)行

對于(&,|),運算的對象是位,也就是1/0,叫做位運算符

理解:0為false,1為true(通用:0表示假,所有非零的數(shù)表示真。   ######方便記憶:0,什么都沒有騙人的,則為假)
運算結(jié)果只有下列四種情況。

1 & 1 = 1
1 & 0 = 0
0 & 1 = 0
0 & 0 = 0

1 | 1 = 1
1 | 0 = 1
0 | 1 = 1
0 | 0 = 0

&&和&對于他們各自的運算對象來說,結(jié)果是一樣的。

下面用一段代碼來說明||在實際代碼中的運用

var data = svc.DeclarationHeads.Include("TaxType").Where(f => f.CorporationCode == param.CorporationCode && f.FlowSign == 2 &&
                          (!param.TaxTypeId.HasValue || f.TaxTypeId == param.TaxTypeId)).ToList();

 當(dāng)傳入的參數(shù)中TaxTypeId==null時,param.TaxTypeId.HasValue為true,發(fā)生短路現(xiàn)象,右邊不執(zhí)行,返回結(jié)果true。

則實際執(zhí)行代碼:var data = svc.DeclarationHeads.Include("TaxType").Where(f => f.CorporationCode == param.CorporationCode && f.FlowSign == 2 ).ToList();

當(dāng)傳入的參數(shù)中TaxTypeId==123時,param.TaxTypeId.HasValue為false,執(zhí)行右邊的代碼,即f.TaxTypeId == 123,

則實際執(zhí)行代碼:var data = svc.DeclarationHeads.Include("TaxType").Where(f => f.CorporationCode == param.CorporationCode && f.FlowSign == 2 && f.TaxTypeId == 123 ).ToList();

適用范圍:當(dāng)我們再勾選條件進行查詢或者操縱數(shù)據(jù)庫時,可以任意選擇條件個數(shù)進行查詢,而只需調(diào)用同一個方法。(即一個服務(wù)完成多重條件的查詢)減少冗余代碼。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用C#編寫簡單的圖形化的可發(fā)送附件的郵件客戶端程序

    使用C#編寫簡單的圖形化的可發(fā)送附件的郵件客戶端程序

    這篇文章主要介紹了使用C#編寫一個圖形化的可發(fā)送附件的郵件客戶端程序的方法,文中的示例同樣是基于支持smtp協(xié)議的郵件服務(wù)器,需要的朋友可以參考下
    2016-02-02
  • c# 判斷是否為空然后賦值的4種實現(xiàn)方法

    c# 判斷是否為空然后賦值的4種實現(xiàn)方法

    下面小編就為大家分享一篇c# 判斷是否為空然后賦值的4種實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • C#中Abstract 、Virtual和Override的使用及區(qū)別

    C#中Abstract 、Virtual和Override的使用及區(qū)別

    C#中virtual,abstract,override用于方法重載,子類覆蓋了父類的相同方法,父類中的實現(xiàn)不可能再被外面調(diào)用。本文給大家重點介紹C#中Abstract 、Virtual和Override的使用及區(qū)別,需要的朋友參考下吧
    2021-06-06
  • C#中的Linq?To?XML講解

    C#中的Linq?To?XML講解

    本文詳細講解了C#中的Linq?To?XML,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • 經(jīng)典實例講解C#遞歸算法

    經(jīng)典實例講解C#遞歸算法

    這篇文章主要用實例講解C#遞歸算法的概念以及用法,文中代碼非常詳細,幫助大家更好的參考和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • C#、ASP.NET通用擴展工具類之LogicSugar

    C#、ASP.NET通用擴展工具類之LogicSugar

    這篇文章主要介紹了C#、ASP.NET通用擴展工具類之LogicSugar,本文直接給出實現(xiàn)代碼和使用方法示例,需要的朋友可以參考下
    2015-06-06
  • C#上位機與三菱PLC通訊的實現(xiàn)步驟(圖文)

    C#上位機與三菱PLC通訊的實現(xiàn)步驟(圖文)

    這篇文章主要介紹了C#上位機與三菱PLC通訊的實現(xiàn)步驟(圖文),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • WPF運行時替換方法實現(xiàn)mvvm自動觸發(fā)刷新

    WPF運行時替換方法實現(xiàn)mvvm自動觸發(fā)刷新

    這篇文章主要為大家詳細介紹了WPF運行時如何實現(xiàn)setter不需要調(diào)方法就可以自動觸發(fā)界面刷新,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-04-04
  • Unity實現(xiàn)打磚塊游戲

    Unity實現(xiàn)打磚塊游戲

    這篇文章主要為大家詳細介紹了Unity實現(xiàn)打磚塊游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 基于C#制作考試答題系統(tǒng)

    基于C#制作考試答題系統(tǒng)

    這篇文章主要為大家詳細介紹了如何利用C#制作帶窗體的考試答題系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評論