Swift3中數組創建方法


轉載自:http://blog.csdn.net/bwf_erg/article/details/70858865

數組是由一組類型相同的元素構成的有序數據集合。數組中的集合元素是有

序的,而且可以重復出現。

1 數組創建

Swift語言中,數組的類型格式為:

Array<ElementType>或[ElementType]

其中Array<ElementType>中的ElementType表示數組的類型,< ElementType >是泛型寫法。[ElementType]是一種簡寫方式。兩者表示的功能是一樣的,我們更偏向於使用簡寫形式,本書里所有數組類型都是使用簡寫形式。

下面我們來創建一個String類型的數組

  1 |  var strArray1: Array<String>

  2 |  let strArray2: [String]

在聲明一個數組的時候可以使用let和var進行修飾,其中let表示不可變數組,var表示可變數組。

    第1行代碼聲明了一個類型為Array<String>的可變數組strArray1。<String>是泛型,說明在這個數組中只能存放字符串類型的數據。

    第2行代碼聲明了一個類型為[String]的不可變數組strArray2。[String]也是聲明一個只能存放字符串類型的數組。

接下來我們來學習如何創建一個空數組。

  1 |  var emptyStrs= [String]()

  2 |  let emptyInts = [Int]()

創建一個數組需要對數組進行聲明和初始化。上述第1行代碼我們創建了一個String類型可變空數組emptyStrs。其中我們var聲明表示該數組是可變數組,中括號[]里面的值String表示數組的類型。[String]()是對數組進行初始化,只不過沒有任何元素。

第2行代碼與第1行代碼同樣是創建一個空數組emptyInts,區別在於我們用let聲明了一個不可變數組,該數組的類型是Int類型。let聲明的數組是不可變數組,必須在聲明的同時進行初始化,一旦初始化,就不可以被修改。

最后我們來學習如何創建非空數組。示例代碼如下:

  1 |  var strArray1: Array<String> = ["hello","Swift"]

  2 |  var strArray2: [String] =  ["hello","swift"]

  3 |  let strArray3 = ["hello","swift",15]

上述代碼都是對數組進行聲明和初始化,數組的類型是通過冒號(:)指明數組的類型。數組中的元素由一對中括號([])括起來,數組中的元素之間用逗號分隔。

第1行代碼是使用標准模板方式聲明是一個String類型的可變數組strArray1,並初始化值為["hello","swift"]。其中尖括號<String>表示數組的類型,表示strArray1只能存放String類型的元素。

第2行代碼是采用簡寫形式顯式聲明可變數組strArray2。[String]表示數組的類型,表示strArray2只能存放String類型的元素。

第3行代碼聲明了一個不可變數組,這里沒有指明數組的類型,采用的是隱式推斷。根據初始化數組的值推斷出數組的類型。在strArray3數組中我們存放了String類型的"hello","swift"以及Int類型的15。在沒有明確指定數組類型,我們可以在數組中存放不同類型的元素。

不可變數組在訪問效率上比可變數組要高,可變數組通過犧牲訪問效率換取可變。當我們可以確定數組是不需要修改的,我們應該將它聲明為let。如果數組內容需要改變。我們需要將它聲明為var。

此外,如果數組中存儲多個相同的元素,我們可以通過以下方法快速創建該數組:

 1 |  var threeDoubles = Array(repeating: 0.0, count: 3)

此時threeDoubles數組的內容為[0.0,0.0,0.0]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM