集合类型--数组
Array是Swift中的一种集合类型:数组,数组是使用有序列表储存同一类型的多个值,与OC的NSArray的最大不同是,Swift的数组是值类型,OC的数组是引用类型
声明数组的方法
// 如果声明可变数组 就设置为变量 var someMutableArray = [Int]() // 声明了空数组 类型为Int // 相反声明不可变数组就设置为常量 let someArray = Array(count: 5, repeatedValue: 0.03) // 声明了一个不可变数组,类型自定推断为double类型,包含5个元素,它们的值都是0.03 // 直接设置元素的声明方法 let someInt = [3,5,8,10,91] // 声明了一个 可以包含任何类型的数组 var array = [Any]()
访问数组中的元素或其他属性
let someInt = [3,5,8,10,91] someInt.first // 取到数组的第一个元素,如果数组为空返回 nil someInt.last // 取到数组的最后一个元素,如果数组为空返回 nil someInt.count // 获得数组中的元素个数 someInt.isEmpty // 判断数组是否为空 空返回true someInt[4] // 通过下标脚本访问第4个元素的值,注意下标是从0开始计算 let subInts = someInt[2...4] // 通过一个范围访问元素,返回一个数组
为数组添加新元素
var someMutableArray = [Int]() // 声明了空数组 类型为Int someMutableArray.append(5) // 添加一个元素 5 someMutableArray += [11, 0] // 拼接一个数组 someMutableArray.insert(3, atIndex: 1) // 在指定的下标插入一个值
删除数组的元素
var someMutableArray = [5, 10, 88, 55, 69, 73, 411] someMutableArray.removeLast() // 删除最后一个元素 someMutableArray.removeFirst() // 删除第一个元素 someMutableArray.removeRange(0...2) // 删除一个范围内的元素 someMutableArray.removeAtIndex(0) // 删除指定位置的元素 someMutableArray.removeAll() // 删除所有元素
修改数组中的元素
var someInt = [12, 55, 86, 49, 31, 12, 558] someInt[5] = 111 // 通过下标脚本修改 someInt[0...2] = [1, 2, 3] // 通过一个范围修改
常用的遍历方法
var someInt = [12, 55, 86, 49, 31, 12, 558] for item in someInt { print(item) // item会自动推断类型 } for (index, value) in someInt.enumerate() { // 通过一个元组遍历,index是下标, value是值 print(index, value) }