swift 基础学习(4) - 数组
2017-04-10 00:00
218 查看
摘要: 数组的定义,
数组的遍历
数组的增,删,改
数组的合并
数组的遍历
数组的增,删,改
数组的合并
// MARK:--数组的定义 func demo() { // OC使用[] 定义数组,没有@符 // 自动推导数组元素类型 [String] - >表示 数组中存放的都是String类型 let firstArray = ["hello","world"] print(firstArray) // 自动推导为[Int]->表示存放的都是 Int类型 // 与OC不同 基本类型都是结构体,不需要包装 let array = [1,2,3,4,5] print(array) // 自动推导为[CGPoint] OC中的结构体 let p = CGPoint(x: 10, y: 300) let array2 = [p] print(array2) // 混合数组,自动推导为 [Any]- > 任意类型 // 实际开发中并不常用 let array3 = ["混合数组",p,1] as [Any] print(array3) // 空间容量不足的时候 会 *2 let array4 = [Int]() print("\(array4.capacity)") }
// MARK:--数组的遍历 func demo2() { // 定义数组 [String] let array = ["张三","李四","王二","麻子"] //1,按照下标遍历 for i in 0..<array.count { print(array[i]) } //2, for in 遍历 for string in array { print(string) } //3,遍历下标与内容 这里的 type 类型就是 元组 for type in array.enumerated() { print("\(type.offset) \(type.element)") } // 4,遍历下标与内容 for (n, s) in array.enumerated() { print("\(n)--\(s)") } // 5,反序遍历 print("--------反序遍历--------") for s in array.reversed() { print(s) } // 6,反序遍历下标内容(先枚举,后反序) for s in array.enumerated().reversed() { print(s) } // 错误写法(下标和内容不一样) for s in array.reversed().enumerated() { print(s) } }
// MARK:- 数组的增,删,改 func demo3() { // OC 中数组分可变与不可变 var array = ["张三","李四","王二","麻子"] // 追加元素 array.append("隔壁老王") print(array) // 修改元素 array[0] = "隔壁老宋" print(array) // 删除元素 array.remove(at: 2) print(array) // 特殊用法 :删除所有元素,并保留空间 array.removeAll(keepingCapacity: true) print("\(array) \(array.capacity)") }
// MARK:- 数组的合并 func demo4() { // 要合并的数组的类型 要保持一致 var array = ["张三","李四","王二","麻子"] as [Any] let array1 = ["老王","老宋","1",190] as [Any] array += array1 print(array) }
相关文章推荐
- Swift 基础学习(数组)
- swift基础学习(03)[数组、集合、字典]
- C#基础学习日志===&gt;数组&lt;===
- Asp.net编程中的数组基础实例学习
- 数组06 - 零基础入门学习C语言28
- 数组09 - 零基础入门学习C语言31
- 数组08 - 零基础入门学习C语言30
- PHP学习第六节----数组的基础使用
- 关于数组的认识02 - 零基础入门学习Delphi16
- 数组06 - 零基础入门学习C语言28
- 数组05 - 零基础入门学习C语言27
- 关于数组的认识01 - 零基础入门学习Delphi15
- Asp.net编程中的数组基础实例学习
- 数组01 - 零基础入门学习C语言23
- 数组01 - 零基础入门学习C语言23
- 数组05 - 零基础入门学习C语言27
- asp.net编程中的数组基础实例学习
- java软件工程师培训学习日记------java语言核心基础之数组
- 数组02 - 零基础入门学习C语言24
- 数组07 - 零基础入门学习C语言29