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

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

斯威夫特:守衛(wèi)vs如果讓

斯威夫特:守衛(wèi)vs如果讓

斯威夫特:守衛(wèi)vs如果讓我一直在閱讀關(guān)于Swift中的Optionals,我已經(jīng)看過(guò)if let用于檢查Optional是否包含值的示例,以及它是否存在 - 使用unwrapped值執(zhí)行某些操作。但是,我已經(jīng)看到在Swift 2.0中,關(guān)鍵字guard主要用于。我想知道是否if let已從Swift 2.0中刪除或是否仍然可以使用它。我應(yīng)該改變我的計(jì)劃包含if let到guard?
查看完整描述

3 回答

?
陪伴而非守候

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

if letguard let提供類(lèi)似但不同的目的。

“else”的情況guard必須退出當(dāng)前范圍。通常這意味著它必須調(diào)用return或中止程序。guard用于提供早期返回,而不需要嵌套其余的功能。

if let嵌套其范圍,并不需要任何特殊的東西。它可以return或不。

一般來(lái)說(shuō),如果if-let塊將是函數(shù)的其余部分,或者它的else子句中有一個(gè)return或中止,那么你應(yīng)該使用它guard。這通常意味著(至少在我的經(jīng)驗(yàn)中),如果有疑問(wèn),guard通常是更好的答案。但是有很多情況if let仍然適合。


查看完整回答
反對(duì) 回復(fù) 2019-08-26
?
慕少森

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

何時(shí)使用if-let以及何時(shí)使用guard往往是一種風(fēng)格問(wèn)題。

假設(shè)您有func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int一個(gè)可選的項(xiàng)目數(shù)組(var optionalArray: [SomeType]?),0如果數(shù)組是nil(未設(shè)置)或者count數(shù)組是否有值(設(shè)置),則需要返回。

您可以使用if-let以下方式實(shí)現(xiàn)它:

func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int
    {
        if let array = optionalArray {
            return array.count        }
        return 0
    }

或者像這樣使用guard

func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int
    {
        guard let array = optionalArray else {
            return 0
        }
        return array.count    }

這些例子在功能上是相同的。

guard真正的亮點(diǎn)是,當(dāng)你有一個(gè)像驗(yàn)證數(shù)據(jù)的任務(wù),你想如果有什么是錯(cuò)的功能早期失效。

if-let當(dāng)你接近完成驗(yàn)證時(shí),“成功路徑”和現(xiàn)在成功綁定的選項(xiàng)都在方法的主要范圍內(nèi),而不是嵌套一堆s,因?yàn)槭÷窂揭呀?jīng)全部返回。


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

添加回答

舉報(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)