Swift数组
OC和Swift数组的比较
- OC 只能存放对象
- swift 既可以存放对象,又可以存Int,Float等基本数据类型
下面是swift数组的具体示范
空数组 let arr = []
let arr2 = [Int]()
let arr3 = Array<Int>()
有值数组 let arr4 = [1,2,3,4]
let arr5:[Int] = [1,2,3,4,5]
let arr6:Array<Int> = [1,2,3,4]
let创建的是不可变数组,var创键的是可变数组 var arr7:[Int] = []
arr7.append(2)
print(arr7)
如果定义数组类型,所有元素一定是该类型 let arr8:[String] = ["aaa","bbb"]
如果没有定义数组类型,所有元素的类型是[NSObject] let arr9 = ["zhang san",19,190]
数组元素个数 print(arr9.count)
//Any 可以存任何的对象,func
//AnyObject 可以存任何class类型的对象
let arr10:[Any] = ["zhangsan",10,190]
print(arr10)
取值,某个元素 print(arr10[2])
取值区间 print(arr10[0..<2])
range取值 print(arr10[Range(start: 0, end: 2)])
var arr11:[Any] = ["zhangsan",10,190]
添加元素 arr11.append("male")
加数组 arr11 += ["xiaoyu"]
插入元素 arr11.insert(81, atIndex: 2)
更新元素 arr11[4] = "remale"
删除元素 arr11.removeFirst()
arr11.removeLast()
print(arr11)
arr11.removeFirst(2)
arr11.removeRange(Range(start: 0, end: 2))
arr11.removeRange(1...2)
删除所有,包括删除容量 arr11.removeAll()
删除所有,但不删除容量 arr11.removeAll(keepCapacity: true)
print("Capacity:\(arr11.capacity)")
数组的批量操作 var arr12 = [1,2,3,4]
//0,1替换成另一个数组[80,81,82,83]
arr12[0...1] = [80,81,82,83]
print(arr12)
遍历操作 for obj in arr12 {
print(obj)
}
for obj in arr12[1...2] {
print(obj)
}
|