Swift-数组
Swift数组
-
OC和Swift数组的比较
- OC 只能存放对象
- swift 既可以存放对象,又可以存Int,Float等基本数据类型
- OC 只能存放对象
-
下面是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) }
-
![](https://images.cnblogs.com/cnblogs_com/mq0036/508398/o_12.png)
您的资助是我最大的动力!
金额随意,欢迎来赏!