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元组类型&数组类型&字典类型的主要内容,如果未能解决你的问题,请参考以下文章

python数据类型——列表元组字典集合

python数据类型:列表元组字典集合

Python元组与字典

列表及元组

Python元组类型字典类型及常用操作

python数据类型-元组字典常用操作