首页 > 解决方案 > 在 Swift 中函数调用后的代码块中做什么?

问题描述

我试图做一个最小的例子,如果有任何错误/问题,请原谅我:

func foo(numberOfItems: Int) {
    let myArray = Array()
    let count = 0
    
    for _ in 0..<(numberOfItems) {
        let item = count
        myArray.append(item)
        count += 1
    }
}

func bar() -> Int {
    foo(numberOfItems: 5) { (item) in // what does this do?
        return item
    }
}

在 function中,调用后带有关键字bar的代码块做什么?或者如果这个具体的例子没有意义,在什么情况下会使用这样的东西?infoo

标签: swiftfunction

解决方案


'闭包主体的开头由 in 关键字引入。这个关键字表示闭包的参数和返回类型的定义已经完成,闭包的主体即将开始。

有关闭包的更多信息,您可以阅读这篇文章:https ://docs.swift.org/swift-book/LanguageGuide/Closures.html


推荐阅读