Swift 细小知识点汇集

浮点型转换为整型

舍去浮点数的小数部分即可。

类型别名

根据程序上下文,你想要使用一个更为贴切的名称来引用某个类型的变量,此时你可以为那个类型定义一个类型别名。

类型别名使用 typealias 关键字来定义。

比如当描述一个外部资源的大小的时候,可以如下定义别名:

typealias AudioSample = UInt16

定义了类型别名之后,你可以使用别名来代替原来的类型名:

// AudioSample 是 UInt16 的别名,所以 AudioSample.min 就是 UInt16.min。maxAmplitudeFound 当前值为0。
var maxAmplitudeFound = AudioSample.min

元组

元组将多个值组合成一个复合值。元组里面的值可以是任意类型(包括元组),他们互相之间也不需要属于同一类型。

// (404, "Not Found") 描述了一个 HTTP状态码,表示你请求的网页不存在。
let http404Error = (404, "Not Found")

// 此时,http404Error 的类型是 (Int, String), 值是 (404, "Not Found")

你可以将元组里面的值分解为单独的常量或者变量来使用他们。

let (statusCode, statusMessage) = http404Error
print("The status code is \(statusCode)")
print("The status message is \(statueMessage)")

// 执行结果: The status code is 404
            The status message is Not Found

如果你只需要使用元组中的某些值,在你分解元组的时候可以使用下划线来忽略这些变量的名称。

let (justTheStatusCode, _) = http404Error
print("The statusCode is \(justTheStatusCode)")

// 执行结果:The statusCode is 404

也可以使用索引值来使用元组中的变量。索引值从0开始,从左至右一次增加。

print("The statusCode is \(http404Error.0)")
print("The statusMessage is \(http404Error.1)")

// 执行结果: The status code is 404
            The status message is Not Found

还可以在定义元组时候,给元组的值命名,然后你就可以通过这些名字来使用对应的值。

let http200Status = (statusCode: 200, description: "OK")
print("The statusCode is \(http200Status.statusCode)")
print("The statusMessage is \(http200Status.description)")

// 执行结果: The status code is 200
            The status message is OK

元组非常适合用作方法的返回值。一个访问网页的方法,可以返回一个元组来描述网页的状态。返回一个包含两个不同类型的值的元组相较于只能返回一个单一的值来说,可以提供更多信息。

元组多用于表示一组暂时存在的相关的值,不适合用来创建复杂的数据结构。如果某个数据结构需要长期存在,最好为之创建一个类或者结构体,而不是使用元组。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值