元组(tuples)app
tuples是将多个单一的值组合为一个复合的值。它能够包含任何类型的值,而不须要都是相同类型。函数
一.元组的建立学习
1。spa
let http404error = (404,"NOT FOUND!") let (statusCode, statusMessage) = http404error print("The status code is \(statusCode),the status message is \(statusMessage)")
2.code
let httpError = (statusCode:404,statusMessage:"Not Found!")
输出结果对象
二.元组数据的访问blog
1.statusCode,statusMessage就像字典中的key同样,咱们能够经过它们来访问元祖的元素。it
2.还可使用下标来访问io
三.元组元素的忽略class
有时候并非须要全部的元素,咱们能够经过_下划线来忽略不须要的元素。
let http404error = (404,"NOT FOUND!") let (statusCode, _) = http404error print("The status code is \(statusCode)")
做为函数返回值时,元组很是有用。一个用来获取网页的函数可能会返回一个(Int, String)元组来来描述是否获取成功。和只能返回一个类型的值比较起来,一个包含两个不一样类型值的元组可让函数的返回信息更有用。
可选(Optional)
使用可选optional来处理一些值缺失的状况。
There is a value, and it equals x有一个等于X的值
or或者
There isn’t a value at all没有值
注意:
在C 和 Objective-C 语言中并无可选这个概念。最接近的 Objective-C 特征是,一个方法要不返回一个对象要不返回nil,nil表示“缺乏一个有效的对象”。然而,这只对对象起做用——对于结构体,基本的 C 类型或者枚举类型并不起做用。对于这些类型,Objective-C 方法通常会返回一个特殊值(好比NSNotFound)来暗示值缺失,Swift 的可选可让你暗示任意类型的值缺失。
若是一个类型可选那么就在类型后加?即表示可选如Int?
下面咱们经过一个简单的例子来学习一下可选
let possibleNumber = "12345" let number = Int(possibleNumber) print(number)
输出结果
let possibleNumber = "Hello,how are you?" let number = Int(possibleNumber) print(number)
输出结果
你将一个毫无价值的可选变量设置为nil
if 语句以及强制解析
你可使用if语句来判断一个可选是否包含值。若是可选有值,结果是true;若是没有值,结果是false。
当你肯定可选包确实含值以后,你能够在可选的名字后面加一个感叹号(!)来获取值。这个感叹号表示“我知道这个可选有值,请使用它。”这被称为可选值的强制解析(forced unwrapping):