在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1、数组的定义 //OC 使用[]定义数组,Swift一样,但是没有@ //自动推导的结果[String]->表示数组中存的都是String //跟OC中的数组指定泛型类型 //Swift 中基本数据类型不需要包装 let array = ["张三","里斯"] //CG结构体 let p = CGPoint(x: 10, y: 300) let array3 = [p] //混合数组:开发中几乎不用,因为数组是靠下标索引 //如果数组中的类型不一致,自动推导的结果[NSObject] //在Swift 中还有一种类型[AnyObject]->任意类型 //在Swift 中一个类可以没有任何‘父类’ //在混合的数组中,CG结构体需要包装 let array4 = ["账单",1,2,NSValue(CGPoint:p)] 2、数组的遍历 let array = ["张三","里斯","xiaoming"] 方法一:按照下标遍历 for i in 0..<array.count { print(i) } 方法二:for in 遍历元素 for s in array{ print(s) } 方法三:enum block 遍历,同时遍历下标和内容 for e in array.enumerate(){ print(e) /* 元组 (0, "张三") (1, "里斯") (2, "xiaoming")
*/ } 方法四:遍历下标和内容 //n 索引下标 //s 就是[String]数组n对应的String元素 //n/s随便写 for (n, s) in array.enumerate(){ print("\(n)\(s)") } 方法五:反序遍历 for s in array.reverse(){ print(s) } 方法六:反序遍历下标和内容 //先枚举再反序 for (n,s) in array.enumerate().reverse(){ print("\(n)\(s)") } 3、数组的增删改 OC数组分为可变和不可变数组,在Swift中改变var就行 追加元素 array.append("老王") //修改,通过下标定位 array[0] = "@" //删除 array.removeAtIndex(2) //删除全部,并且保留空间 array.removeAll(keepCapacity: true) print("\(array)\(array.capacity)") 4、数组的容量 //定义个数组,指定类型, 但是没有初始化 //var array: [Int] //初始化 // array = [Int]() //以上可以合并成一句 var array = [Int]() array.capacity的容量初始化为0,以2,4,8,16……递增
//如果初始化指定容量,可以避免插入数据时,重复分配空间,效率会高点 //[NSMutableArray arrayWithcapacity:10] 5、数组的合并 var array:[NSObject] = ["张三","里斯","xiaoming"] let array2 = ["老公","1","2",100] //将array2合并到array中 //注:要合并的数组类型必须一致,才可以直接+ array += array2 |
请发表评论