欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

swift之闭包

发布时间:2025/6/17 编程问答 65 豆豆
生活随笔 收集整理的这篇文章主要介绍了 swift之闭包 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

func test(_ message: String,completion:(_ goodbye: String) ->Void){

        print(message)

        completion("Goodbye")

    }

   typealias omit = (_ goodbye: String) ->Void

 /// 1.一般形式

        test("closures", completion: {(_ goodbye: String) ->Void in

            print(goodbye)

        })

        /// 2.尾随闭包  省略参数名

        test("message") {(_ goodbye: String) ->Void in

        print(goodbye)

        }

       /// 3.别名形式  比较适合无参形式 毕竟闭包中的参数都是需要引用的

        test("omit") { omit in

           

        }

        /// 4.闭包参数简写  使用$0,$1表示闭包中的第一个参数,第二个参数

        test("omit") {

            print($0)

        }

  使用循环

        let values = [1,3,5,7]

        var results = [Int]()

        for var value in values {

            value *= 2

            results.append(value)

        }

        print(results)

        

        用闭包解包

        let results11 = values.map() { $0*2

        }

        print("printf=\(results11)")

         ///    去空值

        let name:[Int?] = [1,3,5,7,9,nil]

        let flattenResult = name.compactMap{ $0 }

        print(flattenResult)

        

        /// 压平

        let values1 = [[1,3,5,7,59,41],[9]]

        let flattenResult1 = values1.flatMap{ $0 }

        排序

        let flattenResult2 = flattenResult1.sorted(by: { $1 > $0 })

         print(flattenResult2)

转载于:https://www.cnblogs.com/chims-liu-touch/p/9224297.html

总结

以上是生活随笔为你收集整理的swift之闭包的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。