swift的一些基本属性7 (数组)

-数组

- 数组的演练

/// 数组的定义 []

    func demo1() {

        // [String] -> 表示存放字符串的数组

        // 根据右侧的内容自动推导数组中的元素类型

        let array = ["zhang", "wang", "li"]

        // [Int],Swift中基本数据类型不需要包装,Int 是一个结构体

        let array1 = [1, 2, 3, 4, 5]

        // [NSObject](继承自 NSObject 的子类) -> 

        // [AnyObject],在 Swift 中使用的更多,任意对象

        // Swift 中允许对象没有任何父类

        // 如果数组中的元素类型不一致,会推导出 [NSObject] 类型

        let array2 = [1, "zhang"]

        print(array)

    }

}

 /// 遍历数组

    func demo2() {

        // [String]

        let array = ["zhang", "wang", "li”]

        // 1. 直接按照下标遍历

        for i in 0..<array.count {

            print(array[i])

        }

        // 2. for in

        // s 的类型取决于 数组的类型

        for s in array {

            print(s)

        }

 // 3. 遍历内容和下标

        for e in array.enumerate() {

            print("\(e.index) \(e.element)")

        }

// 4. 示例代码

        // n 就是索引,s 就是字符串

        // n 和 s 的名字可以随便写

        for (n, s) in array.enumerate() {

            print("\(n) \(s)")

        )

        print("----")

// 5. 倒序遍历数组

        for s in array.reverse() {

            print(s)

        }

 // 6. 倒序下标遍历

        for e in array.reverse().enumerate() {

            print(e)

            print("\(e.index) \(e.element)")

        }

     }

 /// 增删改 -> 可变 NSMutableArray -- var / 不可变 NSArray -- let

    func demo3() {

        var array = ["zhang", "wang", "li"]

        // 添加内容 addObject

        array.append(“小花")

        print(array)

        

        // 以下代码有问题吗?

        // Cannot convert value of type 'Int' to expected argument type 'String'

        // 不能向数组中追加不允许的类型

        // array.append(180)

        // 修改

        array[0] = "老王"

        print(array)

        // 删除全部

        // 其他的语法 remove 开头,大家可以课后练习!

        array.removeAll()

        print(array)

    }

 /// 演示数组的容量

    func demo4() {

        /// 定义类型,没有初始化,如果定义一个空的数组

//        var array: [String]

//        // 实例化一个空的字符串数组

//        array = [String]()

        // 以上两句代码也可以合并成一条语句

        var array = [Int]()

        print(array.capacity)

        // 关于容量:数组的初始容量默认是0

        // 在添加元素的时候,如果超出当前容量范围,在当前容量范围基础上 * 2

        for i in 0..<9 {

            array.append(i)

            print("\(array) -- 容量 : \(array.capacity)")

        }

    }

 /// 合并数组

    func demo5() {

        var a1 = [1, 2, 3]

        let a2 = [4, 5, 6]

        // 目标,将 a2 合并到 a1 中

        a1 += a2

        print(a1)

    }

   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值