微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

swift新增两种类型

1.元组(tuples)类型的定义:可以包含多个值的数据类型。

元组类型变量(常量)在初始化时使用一对圆括号将元组中的值括起来。例如,下面的代码定义了一个元组类型常量。


1)定义:

(1)

let product = (20,"iPhone6",5888)//(.0 20,.1 "iPhone6",.2 5888)

即:product元组中包含了三个值,其中20是Int类型的值,"iPhone6"是String类型的值,5888是Int类型的值。

(2)let product3 = (30,name:"iPhone8",price:5988) //或者let product3 = (id:30,price:5988)

print(product3.name)//print(product.0)


2)取值

(1) let product1 = (20,"iPhone6",5888)

var(id,name,price) = product1//分别将product1中3个值赋给3个变量(id,price)

print("id=\(id),name = \(name),price = \(price)")

(2)let (_,name1,_) = product1

print("name1=\(name1)")

注:如果我们只想获取元组类型值中的一个或几个值,并不想全部获取这些值,可以使用下划线占位。

2.可选类型的定义:允许变量(常量)中没有值(被设为nil)。要注意的是,swift中的nil和Objective-C中的nil不一样。前者的nil表示没有值,后而的nil表示变量值为空。

1)?(一般转换类型,声明变量时需要加?)

var numStr:String = "a123"

var value:Int? = numStr.toInt()//value必须定义为可选的Int类型,否则无法成功编译。

print(value) //加了?后,表示如果此时value转换失败,如果在oc中可能程序就崩溃了,而swift不会,此处会赋值为nil.

2)!

所以在可选变量时,后面加感叹号是为了在该变量(常量)中没有值(为nil)时抛出运行时异常。

一般情况下,每次在使用时都加感叹号挺麻烦的,所以干脆在定义可选类型变量(常量)时将问号改成感叹号,这样就可以直接引用这些可选类型变量和常量了。

(在其它语言中,不添加错误捕捉,可能会抛出异常,而在swift中,如果转换失败,就直接返回nil)


3.注释

swift与C++的注释基础上(单行注释、多行注释),不过swift对多行注释做了扩展。

/*上层的多行注释

/*嵌套的多行注释

*/

*/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐