第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

(OrElse和Or)和(AndAlso和And)-何時(shí)使用?

(OrElse和Or)和(AndAlso和And)-何時(shí)使用?

慕俠2389804 2019-11-04 09:46:05
(OrElse和Or)和(AndAlso和And)有什么區(qū)別?他們的表現(xiàn)有什么不同,可以說(shuō)正確性好處嗎?有沒(méi)有我不應(yīng)該使用OrElse和AndAlso的情況?
查看完整描述

3 回答

?
心有法竹

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊

Or/And將始終評(píng)估雙方1個(gè)表達(dá)式,然后返回結(jié)果。它們不是短路的。


OrElse/AndAlso是短路。僅當(dāng)無(wú)法僅通過(guò)對(duì)左表達(dá)式的評(píng)估無(wú)法確定結(jié)果時(shí),才對(duì)右表達(dá)式進(jìn)行評(píng)估。(這意味著:OrElse僅當(dāng)左表達(dá)式為false AndAlso時(shí)才評(píng)估右表達(dá)式,并且僅當(dāng)左表達(dá)式為true時(shí)才評(píng)估右表達(dá)式。)


假設(shè)表達(dá)式中沒(méi)有副作用,并且表達(dá)式不相關(guān)(并且忽略了任何執(zhí)行開(kāi)銷(xiāo)),則它們是相同的。


但是,在許多情況下,表達(dá)式是從屬的。例如,當(dāng)列表不是-Nothing且具有多個(gè)元素時(shí),我們想做一些事情:


If list IsNot Nothing AndAlso list.Length > 0 Then .. 'list has stuff

這也可以用來(lái)避免“昂貴”的計(jì)算(或副作用,?。?/p>


If Not Validate(x) OrElse Not ExpensiveValidate(x) Then .. 'not valid

就個(gè)人而言,我發(fā)現(xiàn),AndAlso和OrElse是正確的運(yùn)營(yíng)商都使用,但在1% -或更小,有希望!- 需要副作用的情況。


快樂(lè)的編碼。


1在第一個(gè)表達(dá)式中引發(fā)異常將阻止對(duì)第二個(gè)表達(dá)式進(jìn)行求值,但這并不奇怪。


查看完整回答
反對(duì) 回復(fù) 2019-11-04
?
白板的微信

TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊

除了其他答案中提到的短路外,Or/ And還可用作OrElse/ AndAlso而不是/的按位運(yùn)算符。按位操作包括組合Flags枚舉的值,例如FileAttributes枚舉,在該枚舉中您可能表示文件是只讀的,并且被隱藏FileAttributes.ReadOnly Or FileAttributes.Hidden


查看完整回答
反對(duì) 回復(fù) 2019-11-04
?
慕工程0101907

TA貢獻(xiàn)1887條經(jīng)驗(yàn) 獲得超5個(gè)贊

區(qū)別在于OrElse和AndAlso將基于第一個(gè)條件發(fā)生短路,這意味著如果不通過(guò)第一個(gè)條件,則將不評(píng)估第二個(gè)(或更多個(gè))條件。當(dāng)其中一個(gè)條件可能比另一個(gè)條件更為密集時(shí),這特別有用。


哪里Or很好的示例(同時(shí)評(píng)估了兩個(gè)條件):


If Name = "Fred" Or Name = "Sam" Then

評(píng)估它們的方式真的無(wú)關(guān)緊要


以下AndAlso是有用的,因?yàn)榈诙€(gè)條件可能會(huì)失敗


If Not SomeObject Is Nothing AndAlso CheckObjectExistsInDatabase(SomeObject) Then

這使第一個(gè)條件可以檢查是否已設(shè)置對(duì)象,并且只有在設(shè)置了對(duì)象之后,才可以檢查數(shù)據(jù)庫(kù)(或其他任務(wù))。如果這是一個(gè)普通And關(guān)鍵字,則將對(duì)兩個(gè)關(guān)鍵字都進(jìn)行評(píng)估。


查看完整回答
反對(duì) 回復(fù) 2019-11-04
  • 3 回答
  • 0 關(guān)注
  • 896 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)