【发布时间】:2022-01-09 15:47:37
【问题描述】:
import UIKit
func study(reviseNotes: (String) -> Void) {
print("1")
let notes = "Napoleon was a short, dead dude."
print("2")
for _ in 1...10{
reviseNotes(notes)
}
}
study(reviseNotes:{(notes:String) in
print("3")
print("I'm reading my notes \(notes)")
})
reviseNotes(notes)如何调用study( reviseNotes: {(notes:String)} )?**
(打印用于调试。)
我在尝试理解逻辑?
【问题讨论】:
-
reviseNotes是(String) -> Void,所以它就像一个“带有String参数的迷你函数”。因此,当您执行reviseNotes(notes)时,您是在告诉他调用该方法。{ (notes:String) in ... },这就是你的实现。这是一个闭包/回调/块,如果您有任何其他编码知识,或者名称可能会让您更好地理解它(callback通常可以理解)。