- 數(shù)組是存儲(chǔ)一系列數(shù)據(jù)的結(jié)構(gòu), Swift可以根據(jù)初始化的數(shù)據(jù), 推斷元素類(lèi)型(聲明同時(shí)初始化)
var elements = [1, 2, 3, 4] // 聲明數(shù)組, 同時(shí)初始化, 類(lèi)型為[Int]
var songs = ["song one", "song two", "song three"] // 類(lèi)型為[String]
- 通過(guò)索引訪(fǎng)問(wèn)數(shù)組元素
數(shù)組索引從0開(kāi)始, 最大索引是數(shù)組長(zhǎng)度減1,
如果訪(fǎng)問(wèn)索引超出數(shù)組范圍, 造成數(shù)組越界, 會(huì)導(dǎo)致程序崩潰
elements[0] // 1
songs[1] // "song two"
songs[3] // 程序崩潰, 數(shù)組越界
-
數(shù)組元素含有多種數(shù)據(jù)類(lèi)型, 需要顯式聲明為[Any]
var songs: [Any] = ["song one", "song two", "song three", 3] // 必須聲明為[Any], 否則編譯器報(bào)錯(cuò)
創(chuàng)建數(shù)組(先聲明, 再初始化)
var songs: [String]
songs[0] = "song one" // 報(bào)錯(cuò), 提示數(shù)組并未初始化
// swift 數(shù)組初始化有以下兩種方式
方式一:
var songs: [String] = [] // 創(chuàng)建空數(shù)組
方式二:
var songs = [String]() // 構(gòu)造方法初始化數(shù)組
- type(of:[Any]) 方法 查看數(shù)組的數(shù)據(jù)類(lèi)型
var songs = ["song one", "song two", "song three"]
type(of: songs) // 返回Array<String>.Type
- 數(shù)組之間, 可以通過(guò)+ 進(jìn)行合并
var array_one = [1, 2, 3]
var array_two = [4, 5, 6]
var array_three = array_one + array_two // 合并的之前, 兩個(gè)數(shù)組的元素類(lèi)型相同
- 也可以使用+= 進(jìn)行數(shù)組元素添加
array_three += [1] // 必須用[] 包住