LaneBlog

蝼蚁虽小,也有梦想

PHP Socket服务 | PHP微信开发框架 | 开源博客

初探Swift三 - 数组和字典

Clicks: 2060 Date: 2015-01-09 12:19:12 Power By 李轩Lane

swift ios

    

    Swift的集合有两种,是数组和字典,显式声明和隐式声明、增删改查、基本操作等将在本文介绍。

/**

 * 数组的初始化

 */

//数组只能存同一种数据类型

var array = ["a", "b", "c"]

array[0] = "A"

//显式的声明存储字符串的数组

var array2:[String] = ["a", "b", "c"]

var array3:Array<String> = ["a", "b", "c"]

//创建空数组,存储Int类型

var array4 = [Int]()

var array5 = Array<String>()

var array6:[Int] = []

var array7:Array<Int> = []

//清空数组,清空后,后期仍然只能使用之前定义的数据类型

array2 = []

array2 = [String]()

array2 = Array<String>()

//初始化,10个值,每个值都为0

var array8 = [Int](count:10, repeatedValue:0)

//数组合并

var array9 = [1, 2, 3]

var array10 = array8+array9



/**

 * 数组的基本操作

 */

var array = ["A", "B", "C", "D"]

//数组的总数

array.count

//数组是否为空

array.isEmpty

//数组结尾加入新的元素

array.append("E")

array += ["F"]

array += ["G", "H"]

//数组任意位置加入新元素

array.insert("b", atIndex: 2)

//删除任意位置的元素,返回所删除的元素的值

array.removeAtIndex(1)

//删除最后一个元素

array.removeLast()

//删除所有元素

array.removeAll(keepCapacity: false)

//修改单个元素

array[0] = "AA"

//修改一组元素,若key为2...4,包含2,3,4三个key,而value只有一个,那么2,3,4三个值将只剩一个

array[2...4] = ["AA", "BB", "CC"]

array[2..<4] = ["AA", "bb"]

//遍历数组

for index in 0..<array.count{

    println("\(index) -> \(array[index])")

}

for item in array{

    println(item)

}

for (index, item) in enumerate(array){

    println("\(index) -> \(item)")

}



/**

 * 字典

 * 键值对,可以是任意类型,但是一旦声明了一个字典,那么只能有一种搭配的类型。比如下面是键是Int,值是String。那么所有的键都必须是Int,所有的值都必须是String

 */

//隐式声明字典

var dictionary = [1:"a", 2:"b", 3:"c"]

//现式声明字典

var dictionary1:Dictionary<Int, String> = [1:"a", 2:"b", 3:"c"]

var dictionary2:[Int:String] = [1:"a", 2:"b", 3:"c"]

//声明空字典、清空一个已有的字典

var dictionary3 = Dictionary<Int, String>()

var dictionary4 = [Int, String]()

//清空字典的特殊表示

dictionary4 = [:]


/**

 * 字典的基本操作

 */

//字典总数

var dictionary = [1:"a", 2:"b", 3:"c"]

dictionary.count

//字典是否为空

dictionary.isEmpty

//调用,传入的key可以是任意值,程序不会报错,因为返回的是optionalkey不存在时返回nil

dictionary[1]

"第一个元素:" + dictionary[1]!

//插入新元素

dictionary[4] = "d"

//修改元素 两种方式

dictionary[4] = "e"

var oldValue = dictionary.updateValue("e", forKey: 4)

//删除元素 两种方式

dictionary[4] = nil

var oldValue4 = dictionary.removeValueForKey(4)

//字典的遍历

for (key, value) in dictionary{

    println("\(key) -> \(value)")

}

//遍历key

Array(dictionary.keys)

[Int](dictionary.keys)

//遍历value

Array(dictionary.values)

[String](dictionary.values)

©2014 www.lanecn.com , All rights reserved. Power By Li Xuan.  京ICP备14005030号