学习Swift -- 数组(Array) - 持续更新

时间:2023-03-09 17:52:16
学习Swift -- 数组(Array) - 持续更新

集合类型--数组

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)
}