swift 基础学习(4) - 数组

前端之家收集整理的这篇文章主要介绍了swift 基础学习(4) - 数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
// 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相关文章