Swift 数组 Array NSArray NSMutableArray

2,676 阅读1分钟

一.数组的使用

1.1 创建数组

  • 直接创建
        var arr = ["1","2","3"];
  • 使用构造语法创建
        var array = [String]();
        //[]
  • 创建一个初始化大小数组
        var arr = [String](repeating: "string", count: 3);
        //["string", "string", "string"]

1.2 访问数组

  • 通过索引访问
        var arr = ["1","2","3"];
        print(arr[1]);
        //"2"

1.3 添加元素

  • 使用 append() 方法
        var arr = [String]();
        arr.append("1");
        print(arr);
        //["1"]
  • 使用赋值运算符 +=
        var arr = [String]();
        arr += ["a1"];
        arr += ["a2"];
        print(arr);
        //["a1", "a2"]

1.4 修改元素

  • 使用索引修改元素
        var arr = ["a1", "a2"];
        arr[0] = "aa";
        arr[1] = "bb";
        print(arr);

1.5 遍历数组

        var arr = ["a1", "a2", "a3"];
        for string in arr {
            print(string);
        }
  • 同时获取数值和索引
        var arr = ["a1", "a2", "a3"];
        for data in arr.enumerated() {
            print(data);
        }
        /*
        (offset: 0, element: "a1")
        (offset: 1, element: "a2")
        (offset: 2, element: "a3")
        */

1.6 合并数组

  • 加法操作符 +
        var arr1 = ["a1"];
        var arr2 = ["a2"];
        var arr = arr1 + arr2;
        print(arr);
        //["a1", "a2"]

1.7 count 属性

  • count 属性来计算数组元素个数
        var arr = ["a1","a2"];
        print(arr.count);
        //2

1.8 isEmpty 属性

  • 只读属性 isEmpty 判断数组是否为空
        var arr = ["a1","a2"];
        print(arr.isEmpty);
        //false

二. Array NSArray NSMutableArray

  • Array 是结构体,属于值类型。
  • NSArray 是类,属于引用类型。
  • Array是否可以被修改完全是通过 varlet 关键字来决定的,Array 自身并不解决它是否可以被修改的问题。
  • 使用 NSArrayNSMutableArrayvarlet 关键字就和数组是否可以被修改没关系了。它们只控制对应的变量是否可以被赋值成新的 NSArrayNSMutableArray 对象。