Swift——数组

作者: GavinKang | 来源:发表于2017-12-08 11:20 被阅读76次

    数组分为: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)")
           }
    

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

    相关文章

      网友评论

        本文标题:Swift——数组

        本文链接:https://www.haomeiwen.com/subject/cgcsixtx.html