- 闭包的定义

        1、提前准备好的代码
        2、在需要的时候执行
        3、可以当做参数传递

// 1、最简单的闭包
        // () -> () 没有参数,没有返回值的函数
        // 如果没有参数,没有返回值,可以省略,连 in 一起省略
        let b1 = {
            print("---- b1 ----")
        }
        // 执行闭包
        b1()
        
        // 2、带参数的闭包
        // (Int) -> ()
        // 闭包中,参数、返回值、实现代码,都是写在 {} 中
        // 需要使用一个关键字 `in` 分隔定义和实现
        // { 形参列表 -> 返回值类型 in // 实现代码 }
        
        let b2 = { (x: Int) -> () in
            print(x)
        }
        b2(2)
        
        // 带参数/返回值的闭包
        // (Int) -> Int
        let b3 = { (x: Int) -> Int in
            return x + 100
        }
        print(b3(3))