参数标签与参数名称
了解外部与内部参数名称,以及 Swift 的调用点为何读起来像英语
参数标签与参数名称 是 CoddyKit 上的免费 Swift Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Swift Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Swift Academy 课程共包含 4 节课。
欢迎
Swift 函数的每个参数都有两个名称:调用位置使用的*外部*参数标签,以及函数体内部使用的*内部*参数名称。
外部名称与内部名称
```swift
func greet(person name: String) {
print("Hello, \(name)!")
}
greet(person: "Alice") // call site uses 'person'
// body uses 'name'
```
外部标签可以提高调用位置的可读性。
使用 _ 省略外部标签
使用 `_` 可以省略参数标签:
```swift
func square(_ n: Int) -> Int { n * n }
print(square(5)) // 25 — no label needed
```
在数学函数和实用工具函数中很常见,因为标签可能是多余的。
让标签符合英语表达
精心选择的标签可以让调用位置读起来像句子:
```swift
func move(from source: String, to destination: String) {}
move(from: "Home", to: "Work")
```
这是 Swift 应用程序接口设计的核心原则。
外部名称与内部名称相同
只提供一个名称时,它同时充当外部名称和内部名称:
```swift
func add(a: Int, b: Int) -> Int { a + b }
add(a: 3, b: 4) // label == parameter name
```
这是简单函数中的常见风格。
多个参数
```swift
func divide(_ numerator: Double, by denominator: Double) -> Double {
numerator / denominator
}
let result = divide(10.0, by: 2.0) // 5.0
```
第一个参数通常没有标签;后续参数使用描述性标签。
应用程序接口中的参数标签
Apple 自己的应用程序接口展示了这种模式:
```swift
array.insert(42, at: 0)
string.replacingOccurrences(of: "a", with: "b")
URLSession.shared.dataTask(with: request)
```
请大声读出每个调用位置——它应该听起来自然。
使用不同标签进行重载
名称相同但标签不同的函数彼此独立:
```swift
func load(url: String) {}
func load(file: String) {}
load(url: "https://example.com")
load(file: "/tmp/data.json")
```
无需修改基础名称即可通过标签区分重载。
嵌套函数调用与标签
嵌套调用时标签仍然适用:
```swift
func stringify(_ n: Int) -> String { "\(n)" }
func print(line value: String) { print(value) }
print(line: stringify(42)) // "42"
```
最佳实践
指南:
• 当函数名称已经暗示第一个参数时,省略第一个标签:`makeURL(string:)` → `makeURL("…")`
• 使用符合语法的介词作为外部标签:`at`、`with`、`from`、`to`
• 避免使用重复类型信息的标签:`func add(intValue v: Int)` 是多余的
快速检查
在调用位置抑制外部参数标签的符号是什么?
回顾
要点回顾:
• `func f(external internal: Type)` — 两个名称,调用位置使用外部名称
• `_` 会省略外部标签
• 命名良好的标签可以让调用位置读起来像英语句子
• 只提供一个名称时,标签和名称相同
接下来:默认参数和可变参数。
常见问题解答
「参数标签与参数名称」课时是免费的吗?
是的 — 「参数标签与参数名称」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Swift Academy 课程的其余内容,请升级到 CoddyKit PRO。 Swift Academy 课程共包含 4 节课。
「参数标签与参数名称」这节课中我会学到什么?
了解外部与内部参数名称,以及 Swift 的调用点为何读起来像英语 你通过在浏览器中直接运行的动手代码来练习 Swift Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Swift Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Swift Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「参数标签与参数名称」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Swift Academy 课中编写并运行代码吗?
能。每节 Swift Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 参数标签与参数名称
- 默认参数与可变参数
- 输入输出参数与多返回值
- 作为一等值的函数