来看看Swift语言中数组的运用方法吧

    作者:课课家教育更新于: 2019-03-20 11:45:48

    大神带你学编程,欢迎选课

      数组在所有的编程语言中都是一个常用的类型,它的应用非常广泛。不仅在Objc中数组是常用的类型,在Swift中也是如此。下面我们来了解一下swift中的数组。在文中我们将会对Swift中数组的创建、添加、访问、遍历以及合并进行简单的了解。

    来看看Swift语言中数组的运用方法吧_Swift_Swift数组_Swift数组的遍历_课课家

      要知道的是,在Objc中数组是有NSArray与NSMutableArray之分,但是在Swift中却没有这样子分,Swift中是通过let 和 var来区分数组是否可变的。还要注意的是,在了解Swift的时候我们知道Swift是一种类型安全的语言,所以它的数组也是类型安全的,所以某个数据在被存入某个数组之前类型一定要明确。打个比方:如果我们创建了一个String类型的数组,那么这个数组就只能放String类型的数据。

      创建数组

      我们先通过创建一个存储int 类型的数组作为例子:

    存储int 类型数组例子

      上面是创建一个int 数组的不同方式。

      在Swift中还有两种初始化数组的方法,这两种方法中数组所有的数据都是被默认的:

       1)var 数组名 = [SomeType](count: NumbeOfElements, repeatedValue: InitialValue)

       2)var 数组名 = Array(count: NumbeOfElements, repeatedValue: InitialValue) //这个方法具有推断功能,这里不做详细解释。

      用法实例

       var a = [Int](count: 3, repeatedValue: 0)    //这个实例中创建了一个类型为int ,大小为3,初始值为0的数组

      数组的数量

       在数组中有一个只读的属性count,这个属性可以用于获取数组中的数据项的数量。下面看实例:

            a.count       //虽然很短但是这样就可以得到数组中数据项的数量

       而在得到了数组中数据项的数量之后可以用iSEMpty 来检查count 是否为0.

    isEmpty方法实例

      而当你觉得数组的长度不够的时候还可以通过append来添加,使用方法如下:

      a.append(6)   //数组会在后面增加一个6   [2, 3, 4, 5, 6]

      除了以上的方法添加还有可以使用 append() 方法或者赋值运算符 += 在数组末尾添加元素,如下:

      a += [6, 7]  // 那么会在数组后面添加  [2, 3, 4, 5, 6, 7]

      除了可以在数组尾部添加新的元素,还有一种方法可以在具体的索引值之前添加新项,这个方法是insert(atIndex),如下:

      a.insert(7, atIndex: 0)     //这样就可以在数组的最前面添加7

      访问数组

      我们可以根据数组的索引来对数组的元素进行访问,语法如下:

      var someVar = 数组名[index]

      index 索引从 0 开始,及索引 0 对应第一个元素,索引 1 对应第二个元素,以此类推。注意,不管是Objc还是Swift,数组的索引都是从0开始的。

      如果你想修改数组中的某一项的时候也可以通过索引进行改变:

       a[0] = 8    //用回上文中的数组,数组a 中已经有值[2, 3, 4, 5, 6, 7]

      数组会变为: [8, 3, 4, 5, 6, 7]

      还有一种方法可以批量的修改数组中的值,如下:

       a[1...3] = [9,10,11]

      此时数组值就是:[8, 9, 10, 11, 6, 7]

      注意,如果你要在数组的尾部进行添加新项,不能使用下标的方法来添加新项,因为这样会导致数组越界,引发不必要的错误。

      数组的遍历

      我们可以使用for - in 循环来遍历所以数组中的数据项,如下:

    for - in 遍历方法实例

      打印结果是:a b c d

      但是如果我们同时需要每个数据项的值和索引值的话,可以使用String中的enumerate()方法,如下:var a = [String]()

    enumerate方法实例

      输出的结果是:

    enumerate方法实例结果

      合并数组

      我们可以使用加法操作符(+)来合并两种已存在的相同类型数组。新数组的数据类型会从两个数组的数据类型中推断出来:

    合并数组实例

      结果:2 2 1 1 1 

      文中对Swift中数组的最基本的方法进行了了解,这些方法都是直接套用的,并没有什么技巧可言。要注意的是,不了解Swift的朋友可能会看到代码后面没有分号,这在Swift中是正常的。在Swift中支持不用分号,但是在同一行编写两条语句就要使用分号。希望本文能对有需要的朋友有所帮助。

课课家教育

未登录