Menu
CoddyTech

默认值

本课属于 Coddy Swift 学习旅程的“基础知识”单元。第 57 课,共 86 课。

有时,参数有一个大多数时候都会使用的值。你可以为该参数指定一个默认值,这样就不用每次都要求调用方提供它。

要设置默认值,请在参数的类型后使用赋值运算符(=):

func greet(name: String, greeting: String = "Hello") {
    print("\(greeting), \(name)!")
}
greet(name: "Alice")                    // 输出:Hello, Alice!
greet(name: "Bob", greeting: "Hi")      // 输出:Hi, Bob!

调用函数时,你可以省略有默认值的参数。Swift 会自动使用默认值。但如果你需要其他值,仍然可以显式提供。

带默认值的参数应放在参数列表的末尾。这样可以让函数调用简洁易读:

func calculatePrice(base: Double, taxRate: Double = 0.1) -> Double {
    return base + (base * taxRate)
}
print(calculatePrice(base: 100))              // 输出:110.0
print(calculatePrice(base: 100, taxRate: 0.2)) // 输出:120.0

默认值让你的函数更灵活。对于常见情况,函数可以直接使用;需要时也可以进行自定义。

challenge icon

挑战

简单

编写一个函数 formatGreeting,它接收 name、greeting 和 repeatCount,并返回一条格式化的问候消息。

这个函数应为可选参数使用默认值:

  • greeting 的默认值应为 "Hello"
  • repeatCount 的默认值应为 1

构建一个字符串,按指定次数重复问候语模式,并用空格分隔。

参数:

  • name(String):此人的姓名(必需)
  • greeting(String):问候语(默认值:"Hello")
  • repeatCount(Int):重复问候语的次数(默认值:1)

返回值:重复问候语模式后得到的字符串。格式:将 "[greeting], [name]!" 重复 repeatCount 次,每次之间用一个空格分隔(String)

例如,如果 name 是 "Alice",greeting 是 "Hi",并且 repeatCount 是 2,那么函数会返回 "Hi, Alice! Hi, Alice!"。

如果只传入 name,并将其设为 "Bob"(使用默认值),函数会返回 "Hello, Bob!"。

亲手试试

func formatGreeting(name: String, greeting: String, repeatCount: Int) -> String {
    // 在这里编写代码
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: Swift 在线编辑器