Skip to content

Swift 入门(5):函数与参数

函数是 Swift 程序的基本组成单位,既能封装逻辑,也能复用代码。

基本函数

swift
func sayHello() {
    print("Hello, Swift!")
}

sayHello()  // 调用

带参数的函数

swift
func greet(name: String) {
    print("Hello, \(name)!")
}

greet(name: "Alice")

多个参数

swift
func add(a: Int, b: Int) -> Int {
    return a + b
}

let result = add(a: 3, b: 5)
print(result)  // 8

使用 -> 指定返回值类型。

外部参数名

Swift 默认函数参数既有 外部名(调用时用的)也有 内部名(函数体内用的)。

swift
func multiply(x a: Int, y b: Int) -> Int {
    return a * b
}

let r = multiply(x: 2, y: 3)
print(r)  // 6

省略外部参数名

_ 可以省略外部参数名,让调用更简洁:

swift
func divide(_ a: Double, _ b: Double) -> Double {
    return a / b
}

print(divide(10, 2))  // 5.0

默认参数

swift
func greet(name: String = "游客") {
    print("你好,\(name)!")
}

greet()            // 你好,游客!
greet(name: "小明") // 你好,小明!

可变参数

一个参数可以接收多个值:

swift
func sum(_ numbers: Int...) -> Int {
    var total = 0
    for n in numbers {
        total += n
    }
    return total
}

print(sum(1, 2, 3, 4))  // 10

返回多个值(元组)

swift
func minMax(_ numbers: [Int]) -> (min: Int, max: Int)? {
    if numbers.isEmpty { return nil }
    var minVal = numbers[0]
    var maxVal = numbers[0]
    for n in numbers {
        if n < minVal { minVal = n }
        if n > maxVal { maxVal = n }
    }
    return (minVal, maxVal)
}

if let result = minMax([3, 7, 2, 9]) {
    print("最小值: \(result.min), 最大值: \(result.max)")
}

小结

  • func 定义函数。
  • 参数可以有外部名,也可以用 _ 省略。
  • 支持默认参数和可变参数。
  • 函数可以返回单个值,也可以返回元组。

本站总访问