Swift——数组

数组分为:Array 和NSArray(NSMutableArray) 两种类型

NSArray(NSMutableArray): 基于 Foundation框架里的,不是Swift的也不是OC的,NSArray和NSMutableArray的区别就是后者是可变数组,可以添加和删除元素,一个数组可以存储多种任意类型的对象,并且只能存储对象类型
Array: swift的Array不存在可变不可变的问题,对象类型声明为var就是可变,let就是不可变,一个数组只能存储一种特定的元素类型,也就是说数组在定义的时候必须指明数组的类型,通过显式的类型标注或类型推断,不仅能存对象类型还能存储像Int这种基本类型

        var ageArrays = [1,2,3,4]
        var height = Array<Int>()//定义一个可以放 Any 类型的数组
        print(ageArrays.isEmpty)  //判断数组是否为空
        print(ageArrays.contains(3))  //判断数组是否包含元素 3
        print(ageArrays.append(5))  //在数组最后面添加 5
        print(ageArrays.insert(6, at: 4)) //在序号为4的地方插入 6
        print(ageArrays[2...4] = [8,8,8]) //同时修好序号为 2,3,4 的值
        print(ageArrays.removeFirst()) //删除第一个是元素
        print(ageArrays.removeLast()) //删除最后一个元素
        print(ageArrays.removeSubrange(Range(1..<3))) //删除序号为 1,2 的元素
        print(ageArrays.removeAll()) //删除所有元素

        height = [156,155,189,178,170]
        height.sort(){return $0 > $1}//从大到小排列
        height.sort(){return $0 < $1}//从小到大排列
        print(height)
        //        对于复杂的数组,也可以使用 sort函数 进行排序
        var userList = [(name:"xiaoQiang",age:"20"),(name:"liHua",age:"32"),(name:"xiaoHua",age:"2"),(name:"Sanxiao",age:"12")]
        userList.sort(){return $0.name < $1.name}//对元素中的名字进行降序排序,一般用在城市列表,联系人等地方
        print(userList)
        //        多维数组
        var numbers = [[1,2,3,4],[5,6,7,8]]
        print(numbers[1][3])  //取序号为 1 里面序号为3的元素的值
        //如果我们同时需要每个数据项的值和索引值,可以使用 enumerated() 方法来进行数组遍历
        for (index, value) in numbers.enumerated() {
          print("Item \(String(index + 1)): \(value)")
       }

本文章会持续更新,欢迎老铁们关注!!