Swift2.0元组类型&数组类型&字典类型
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift2.0元组类型&数组类型&字典类型相关的知识,希望对你有一定的参考价值。
元组类型
元组Tuple用来归纳多个归纳具有任意类型的相关联的值,如:
var person = (30, "neusoft")
print(person) // (30, "neusoft")
该元组类型对象person的类型可以认为是:(Int, String)
如果想要获取元组中的某个数据,可以采用以下方式
方式一:可以将其中的数据关联到常量或变量中,如:
let (age, name) = person
print("age:\(age) name:\(name)”) // age:30 name:neusoft
如果并不想将所有的数据都进行关联,可以这样:
let (_, name) = person
print("name:\(name)”) // name:neusoft
方式二:定义时进行关联,使用类似结构体的方式访问
var person = (age:30, name:"neusoft")
person.age = person.age + 1
print("age:\(person.age) name:\(person.name)")
方式三:通过类似下标的方式,直接获取元组中的某个数据,如:
print("age:\(person.0) name:\(person.1)”) // age:30 name:neusoft
注意:使用方式二不要访问不存在的关联名,使用方式三不要越界
数组类型
类型的两种写法:
完整版:Array<AnyObject> Array<Int> Array<String>
简化版:[AnyObject] [Int] [String]
如:
var arr1:Array<Int> = [1,2,3,4,5,6,7,8]
var arr2:[String] = ["hello", "world", "neusoft"];
var arr3:[AnyObject] = [10, "neusoft”] //AnyObject表示不定类型数组
var arr4:[String] = [String](); //空数组
数组中的元素个数,使用count属性访问
print("arr1‘s count:\(arr1.count)")
使用isEmpty判断数组是否为空
if arr4.isEmpty {
print("Empty!")
}
数组中的元素通过[]运算符获取
print(arr2[0]) //“hello"
arr2[0] = "HELLO"
print(arr2[0]) //“HELLO"
数组可以采用以下方式进行遍历:
方式一:C语言访问方式,如:
for var i = 0; i < arr1.count; i++ {
print("arr1[\(i)]=\(arr1[i])")
}
方式二:for in 方式,如:
for item in arr2 {
print(item)
}
数组的添加操作
arr2.append("ios”) //末尾追加
arr2.insert("iPhone", atIndex: 1) //指定位置插入
数组的删除操作
arr2.removeAll() //删除所有元素
arr2.removeFirst() //删除第一个
arr2.removeLast() //删除最后一个元素
arr2.removeAtIndex(2) //删除指定下标的元素
var s = arr2.popLast() //删除最后一个并返回
数组的创建
var arr1 = Array<Int>() //创建空数组
var arr2 = [String](count: 3, repeatedValue: "hello”) //创建字符串数组,3个元素,都是”hello"
数组的连接
var arr1 = Array<Int>(count: 5, repeatedValue: 3)
var arr2 = [Int](count: 3, repeatedValue: 5)
var arr3 = arr1 + arr2
字典类型
完整版类型:Dictionary<KeyType, ValueType>
简化版类型:[KeyType:ValueType]
Swift中的基本类型,包括String Int Double Bool等都可以成为KeyType,如:
var person1:[String:AnyObject] = ["name":"xiaoming", "age":20, "score":80]
var person2:[String:AnyObject] = [String:AnyObject]()
字典的键值对个数:
print(person1.count)
判断字典是否为空
if ( person2.isEmpty ) {
print("Empty!")
}
字典中元素的获取:(取出的value是可选类型的)
print(person1["name"]!)
print(person1["age"]!)
字典的遍历:
方式一:key与value
for (key, value) in person1 {
print("key:\(key) value:\(value)")
}
方式二:key
for key in person1.keys {
print(key)
}
方式三:value
for value in person1.values {
print(value)
}
添加/设置字典中的value
person1.updateValue(30, forKey: "age")
print(person1["age"]!)
删除字典中的字段
person1.removeAll()
person1.removeValueForKey("age")
本文出自 “安萌” 博客,请务必保留此出处http://annmeng.blog.51cto.com/3321237/1747046
以上是关于Swift2.0元组类型&数组类型&字典类型的主要内容,如果未能解决你的问题,请参考以下文章