加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

swift新增两种类型

发布时间:2020-12-14 07:04:56 所属栏目:百科 来源:网络整理
导读:1.元组(tuples)类型的定义:可以包含多个值的数据类型。 元组类型变量(常量)在初始化时使用一对圆括号将元组中的值括起来。例如,下面的代码定义了一个元组类型常量。 1)定义: (1) let product = ( 20 , "iPhone6" , 5888 ) // (.0 20,.1 "iPhone6",

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对多行注释做了扩展。

/*上层的多行注释

/*嵌套的多行注释

*/

*/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读