Swift 匿名标识符的使用

15 min read

Swift 中的匿名标识符 _ 可以用来代替某个参数或返回值,表明这个参数或返回值如果不关心的话可以被忽略掉。

  1. 忽略参数

在调用一个函数时,如果有些参数对于当前的操作没什么用处,可以用匿名标识符 _ 来忽略它们:

func printNumbers(_ a: Int, _ b: Int, _ c: Int) {
    print("a = \(a), b = \(b), c = \(c)")
}

printNumbers(1, 2, 3) // a = 1, b = 2, c = 3
printNumbers(1, _, 3) // a = 1, b = _, c = 3

在第二个调用中,我们用 _ 来忽略了参数 b,这样在函数里面打印时,b 的值会显示为 _

  1. 忽略返回值

在调用一个返回值的函数时,如果我们不关心函数的返回值,也可以用匿名标识符 _ 来忽略它:

func multiply(a: Int, b: Int) -> Int {   // 返回类型是 Int
    return a * b
}

let result = multiply(a: 3, b: 4)       // result = 12
let _ = multiply(a: 2, b: 5)            // 忽略返回值

在第二次调用 multiply 函数时,我们用 _ 来忽略了函数的返回值。这样的话,函数的返回值将不会被使用,也不会对程序的逻辑造成影响。