//两种集合类型array dictionary
//Array中的所有元素必须是相同的,Dictionary中的所有keyType必须相同,ValueType必须相同。
//所有的类型定义,可以再xcode中直接输入类型,然后cmd+鼠标点击查看类型的定义。
//例如Array,Dictionary
//数组中存储的数据类型需要相同,三种定义数组的方式
var a11:[String] = ["test","test2"] //Beta3新增
var a12:Array<String> = ["test","test2"]
var a13 = ["test","test2"]
var a2 = [1,2,3]
//数组添加数据的四种方法
a2.append(4)
a2.insert(0, atIndex:0)
a2 += [6,7] //只能用+= 来加一个数组,如果添加单个数据,只能用append
println(a2)
//常用方法 isEmpty append count capacity
if !a2.isEmpty
{
println("The count of a2 is\(a2.count)")//The count of a2 is 3
}
//修改数组的值
a2[4...6] = [100,200,300,400,500]//把原来4到6的三个数值,修改为5个数据
println(a2)
//删除元素
a2.removeAtIndex(0)
println(a2)
a2.removeLast()
println(a2)
a2.removeAll(keepCapacity:true)
println("The count of a2 is\(a2.count)!")
println("The capacity of a2 is\(a2.capacity)")//容量大于等于count,且是2的次方
//字典种key和value的类型一旦定下来就不能改变,不象python,字典中存储的数据类型不是任意的。声明定义字典的方法有:
//声明空数据方法
var dic2 = Dictionary<Int, String>()
var d1 = ["key1":"Value1","key2":"value2"]
var airports:[String: String] = ["TYO":"Tokyo", "DUB":"Dublin"] //Beta3新增
var d3:Dictionary<String,String> = ["key1":"value1"]
//更新键值
d1.updateValue("NewValue", forKey:"key1")
println(d1)//[key2: value2, key1: NewValue]
//增加 或 修改数据
d1["newkey"] ="hello"
println(d1)//[key2: value2, newkey: hello, key1: NewValue]
//删除数据
d1.removeValueForKey("newkey")
println(d1)//[key2: value2, key1: NewValue]
//删除数据,将value赋值为空
d1["key2"] =nil
println(d1)//[key1: NewValue]
//遍历字典
for key ind1.keys//for value in d1.values
{
println(key)
}
for (key, value)ind1
{
println(key, value)
}
// d1 += ["new1":"data1"] 字典不能像数组一样增加数据
// 常用函数 count
println(d1.count)