Swift之数组使用

前端之家收集整理的这篇文章主要介绍了Swift之数组使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Swift提供两种类型的集合,一种是数组Array,另外一种是字典Dictionary,他们之间的共同点是都是用来存储相同类型的数据,不同点是数组中存放的数据是有序的,二字典中存放的数据时无序的。字典还具有两外一个特性,就是字典中所存储的数据是键值对(key - value)形式存在。

这里主要写一下Swift中数组类型使用

一、数组类型定义

定义其他变量或者常量一样,如果我们在Swift中定义一个数据,也可以通过类型标注指定他的类型。在Swift中,数组类型有两种写法:

// 一是完整版:
var colorArray : Array<String> = ["red","blue","green"]
//另外一种是简化版
var colorArray1 : [String] = ["red","green"]
// 可以使用推导来声明数组
var colorArray2 = ["red","green"]
var integerArray = [1,2,3]

/*
注:1、我们在定义数组时,指定数组中的数据类型,我们必须统一存放该类型数组
    2、我们在定义数组时,不指定数组中的数据类型,则数组默认为anyObject类型。

*/

二、我们在定义数组时可以不指定数组类型:

var inferList = ["eggs",123,true]
for item in inferList
{
    println("inferList contain item : \(item)")
}
需要指出的是这种情况下产生的数组时NSArray的数组。

判断数组是否为空,Swift中数组为空判断可以直接调用isEmpty方法

if inferList.isEmpty {
    println("inferList为空")
}else{
    println("inferList不空")
}

也可以采用数组元素个数进行判断:

if inferList.count == 0 {
    println("inferList为空")
}else{
    println("inferList不空")
}


三、swift提供两种方法为数组添加元素

第一种:通过调用数组的内嵌方法append)为数组添加新元素

inferList.append("hello")

第二种:通过加法赋值运算符来为当前数组添加新元素

inferList += ["你好"]

/*

第二种方法更为强大的是可以进行批量添加,批量添加的数组只能存放一种数据类型

inferList+= ["红茶","绿","黑茶"]

*/


四、修改数组元素

swift修改数组中元素可以先通过数组名+方括号+下标的方式来获取数组中某个元素的值

获取inferList第一个元素

var firseItem = inferList[0]

修改具体元素的值

inferList[0] = "egg"

Swift提供了批量修改数组元素的功能

inferList[4...6] = ["呵呵","嘿嘿"]
/*
这种情况下,4、5元素被修改,6及以后元素被移除,若不移除则 <span class="s1" style="font-family: Arial,Helvetica,sans-serif;">inferList</span><span class="s2" style="font-family: Arial,sans-serif;">[</span><span class="s3" style="font-family: Arial,sans-serif;">4</span><span class="s2" style="font-family: Arial,sans-serif;">...</span><span class="s3" style="font-family: Arial,sans-serif;">6</span><span class="s2" style="font-family: Arial,sans-serif;">] = [</span><span class="s4" style="font-family: Arial,sans-serif;">"</span><span class="s5" style="font-family: Arial,sans-serif;">呵呵</span><span class="s4" style="font-family: Arial,sans-serif;">"</span><span class="s2" style="font-family: Arial,sans-serif;">,</span><span class="s4" style="font-family: Arial,sans-serif;">哈哈</span><span class="s4" style="font-family: Arial,sans-serif;">嘻嘻</span><span class="s4" style="font-family: Arial,sans-serif;">]</span>
*/

五、为数组插入、移除元素

Swift中通过调用insert(atIndex:)方法在数组的任意指定位置插入一个新的元素

inferList.insert("insertElements",atIndex: 0)

Swift中通过调用removeAtIndex方法移除指定位置元素,其他元素自动前移

inferList.removeAtIndex(0)

第一个位置"insertElements"被移除

也可以使用removeLast(),移除最后一个元素

inferList.removeLast()

最后一个元素"黑茶"被移除


六、数组遍历
在Swift中数组遍历一共有两种方法

1、通过for in 循环快速遍历数组

for item in inferList {
    println(item)
}

2、 通过 enumerate 全局函数来便利数组,这个函数将会将数组中的元素作为一个类型为( index,value )元祖返回

for (var (index,value)) in enumerate(inferList) {
    println("item : \(index),value : \(value)")
}

猜你在找的Swift相关文章