Swift數組 OC和Swift數組的比較 OC 只能存放對象 swift 既可以存放對象,又可以存Int,Float等基本數據類型 下麵是swift數組的具體示範 空數組 let arr = [] let arr2 = "Int" let arr3 = Array() 有值數組 let arr4 ...
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) }