Swift條件判斷中逗號的使用方法示例
前言
眾所周知在Swift語言中,Bool值是用來進行條件判斷的,可以進行&&以及||的操作,從而實現(xiàn)多個表達式共同判斷。
但是由于Swift中存在可選項綁定,或者說是用let展開可選項的原因,有些地方條件判斷中不能夠使用&&來進行處理。比如,我們要在變量hasValue確實有值,且參數(shù)個數(shù)paramCount大于0的時候,執(zhí)行代碼,一般我們可以這樣寫:
if hasValue != nil && paramCount > 0 {
...
}
但是如果我們在后續(xù)代碼中中要使用hasValue的值的話,就不能夠只判斷hasValue是否為nil了,而應該使用可選項綁定把值給讀出來,也就是下面的代碼:
if let hasValue = hasValue {
if paramCount > 0 {
...
}
}
由于let hasValue = hasValue并不會返回一個Bool值,導致兩個條件不能夠使用&&進行判斷,這個時候,我們就要使用所謂的逗號了,也就是可以寫成:
if let hasValue = hasValue, paramCount > 0 {
...
}
這個樣子就可以滿足我們的需求,代碼逼著上面的代碼少了一層判斷,看起來會更加友好。特別是當我們需要可選項綁定多個變量時,這樣寫會更加的方便。如:
if let a = a, let b = b, let c = c, let d = d, e < 0, f > 0 {
...
}
如果不使用,進行分割,而是一個個判斷的話,將會進入多重判斷的坑里,讓代碼臃腫不堪。
總的來說,條件判斷中逗號的作用類似于&&,但是它除了連接Bool值,也可以用來連接可選項綁定的判斷。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,本文還有許多不足,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
RxSwift實現(xiàn)替換delegate的方法示例
這篇文章主要給大家介紹了關(guān)于RxSwift實現(xiàn)替換delegate的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用RxSwift具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-09-09
Swift利用Decodable解析JSON的一個小問題詳解
這篇文章主要給大家介紹了關(guān)于Swift利用Decodable解析JSON的一個小問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。2018-04-04

