0Pricing
Swift Academy · 课时

何时添加显式注解

添加注解以消除歧义并记录意图。

何时添加显式注解 是 CoddyKit 上的免费 Swift Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Swift Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Swift Academy 课程共包含 4 节课。

为什么要添加类型注解

尽管类型推断功能强大,显式类型注解仍能提升清晰度、解决歧义并记录设计意图。

let temperature: Double = 36
print(temperature)
print(type(of: temperature))

强制使用 Double

没有类型注解时,let x = 5 的类型是 Int。如果之后需要进行小数运算,请添加类型注解将其指定为 Double。

let count: Double = 5
let average = count / 2
print(average)

空集合

空字面量没有可供推断的元素,因此必须显式指定类型。

var scores: [Int] = []
scores.append(10)
print(scores)

空字典

空字典也遵循相同规则:请同时注解键类型和值类型。

var ages: [String: Int] = [:]
ages["Ada"] = 36
print(ages)

消除重载歧义

当多个初始化器都可能匹配时,类型注解会告诉编译器您要使用哪一个。

let small: Int8 = 100
let big: Int64 = 100
print(type(of: small), type(of: big))

记录存储的值

对于存储属性,显式类型是必需的,同时也能为阅读代码的人提供说明。

struct Account {
    var balance: Double = 0
    var owner: String = "Unknown"
}
let a = Account()
print(a.balance, a.owner)

为可读性添加注解

对于较长或不明显的表达式,类型注解能帮助阅读者一眼了解结果类型。

let ratio: Double = 22 / 7
print(ratio)

可选类型

您通常需要显式注解可选类型,因为单独的 nil 没有可推断的类型。

var nickname: String? = nil
nickname = "Ace"
print(nickname ?? "none")

不返回值的闭包

当存储的闭包可能产生歧义时,请注解其完整类型。

let action: () -> Void = {
    print("ran")
}
action()

数值字面量转换

类型注解可以让同一个字面量适用于不同的数值类型,而无需手动调用转换函数。

let cpu: UInt8 = 255
let wide: UInt32 = 255
print(cpu, wide)

平衡类型推断与类型注解

经验法则是:让类型推断处理明显的情况;当类型存在歧义、添加注解能提升清晰度,或类型注解是必需的(空集合、属性、参数)时,再进行注解。

let obvious = "clear"       // inference is fine
let precise: Double = 9     // annotation needed
print(obvious, precise)

快速检查

什么时候必须添加类型注解?

回顾

添加显式类型注解,可以强制指定特定的数值类型,声明空集合和可选类型,消除重载歧义,并记录属性和应用程序接口。除此之外,请让类型推断帮助代码保持简洁。

var list: [String] = []
let rate: Double = 5
print(list, rate)

常见问题解答

「何时添加显式注解」课时是免费的吗?

是的 — 「何时添加显式注解」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Swift Academy 课程的其余内容,请升级到 CoddyKit PRO。 Swift Academy 课程共包含 4 节课。

「何时添加显式注解」这节课中我会学到什么?

添加注解以消除歧义并记录意图。 你通过在浏览器中直接运行的动手代码来练习 Swift Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Swift Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Swift Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「何时添加显式注解」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Swift Academy 课中编写并运行代码吗?

能。每节 Swift Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 类型推断的工作原理
  2. 何时添加显式注解
  3. 字面量的类型推断
  4. 闭包中的类型推断
← 返回 Swift Academy