swift中的函数做参数和函数做返回值

最新版swift的函数做参数与函数做返回值该怎么写?麻烦给个demo?

阅读 3.3k
2 个回答

函数:

/// 参+返回值
func printString(_ A: String) -> Bool {
    print(A)
    return true
}
/// 普通参数 + 函数参数 - 返回值
func printString(_ B: String, f: (String) -> Bool) -> Bool {
    print(B)
    return f("func f string is " + B)
}
/// 无参 - 函数返回值
func printString() -> (String) -> Bool {
    return printString
}
/// 函数参 - 无返回值
func printString(f: (String) -> ()) {
    f("hehe")
}
/// 闭包中执行的函数参数(逃逸闭包)
func printFunc(f: @escaping () -> ()) {
    printString { _ in
        f()
    }
}

调用:

_ = printString()
_ = printString("print A")
_ = printString("print B") { (C: String) -> Bool in
    print(C)
    return false
}
printString { (D: String) in
    print(D)
}
printFunc {
    print("func")
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题