swift 基本運算符

空合運算符

空合運算符(a??b)將對可選類型a進行空判斷,如果a包含一個值就進行解封,否則就返回一個默認值b。表達式a必須是Optional類型。默認值b的類型必須要和a存儲值的類型保持一致。

空合運算符是對以下代碼的簡短表達方法:

a != nil ? a! : b
上述代碼使用了三目運算符。當可選類型a的值不爲空時,進行牽制解封(a!),訪問a中的值;反之返回默認值b。無疑空合運算符(??)提供了一種更爲優雅的方式去封裝條件判斷和解封兩種行爲,顯得簡潔以及更具可讀性。

下面就是採用空合運算符例子:

        let defaultColorName = "red"
        var userDefinedColorName: String? 
        var colorNameToUse = userDefinedColorName ?? defaultColorName
userDefinedColorName變量被定義爲一個可選的String類型,默認值爲nil。由於userDefinedColorName是一個可選類型,我們可以使用空合運算符去判斷其值。在上一個例子中,通過空合運算符爲一個名爲colorNameToUse的變量賦予一個字符串類型的初始值。由於userDefinedColorName值爲空,因此表達式userDefinedColorName??defaultColorName返回defaultColorName的值,即red。如果userDefinedColorName非空,那麼將會返回非空的數據。

區間運算符

閉區間運算符

閉區間運算符(a...b)定義一個包含從a到b的所有值的區間。a的值不能超過b。
 for index in 1...5{
      print("\(index) * 5 = \(index * 5)")
 }

半開區間運算符

半開區間運算符(a..<b)定義一個從a到b但不包括b的區間。之所以稱爲半開區間,是因爲該區間包含第一個值而不包含最後一個值。
 for index in 1..<5{
      print("\(index) * 5 = \(index * 5)")
 }

取自《the swift programming language》

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章