参数标签
本课属于 Coddy Swift 学习旅程的“基础知识”单元。第 54 课,共 86 课。
Swift 通过使用参数标签,让你可以控制函数调用的可读性。调用函数时使用的是参数标签,而函数体内使用的是参数名。
你可以在参数名前写出参数标签,同时指定两者:
func greet(to name: String) {
print("Hello, \(name)!")
}
greet(to: "Alice") // 输出:Hello, Alice!这里,to 是参数标签(调用时使用),name 是参数名(在函数内部使用)。这样调用读起来更自然:“向 Alice 问好”。
有时,为了让调用更简洁,你可能想完全省略标签。使用下划线(_)作为参数标签:
func square(_ number: Int) -> Int {
return number * number
}
print(square(5)) // 输出:25如果没有下划线,你就必须写成 square(number: 5)。下划线免去了这个要求,让函数名已经能清楚表达用途时,调用更加简洁。
挑战
简单创建两个函数,展示不同的参数标签用法:
函数 1: send
- 使用参数标签
message,参数名为text(类型为String) - 使用参数标签
to,参数名为recipient(类型为String) - 返回一个符合以下格式的字符串:
"Sending '[text]' to [recipient]"
函数 2: double
- 使用下划线
_省略参数标签 - 参数名为
number(类型为Int) - 返回该数字乘以 2 的结果
定义好两个函数后,从输入中读取两个字符串和一个整数,然后调用这两个函数,并将结果分别打印在单独的行上。
你将收到以下输入:
- 第一行:消息文本(例如,
"Hello") - 第二行:收件人姓名(例如,
"Alice") - 第三行:要加倍的数字(例如,
"7")
例如,如果输入是 "Hello"、"Alice" 和 "7",输出应为:
Sending 'Hello' to Alice
14亲手试试
// 读取输入
let messageText = readLine()!
let recipientName = readLine()!
let numberToDouble = Int(readLine()!)!
// TODO:在下方编写你的代码
// 定义函数 'send',参数标签为 'message' 和 'to'
// 定义函数 'double',使用 '_' 省略参数标签
// 调用这两个函数并打印结果这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Swift 在线编辑器