【Groovy】闭包 Closure ( 闭包调用 | 闭包默认参数 it | 代码示例 )

文章目录

一、调用闭包

二、闭包默认参数 it

三、代码示例





一、调用闭包


执行 Closure 变量 的 call() 方法 , 可以调用该闭包 ;


     

// 定义闭包变量
        def closure = {
            println "Hello Closure!"
        }
        // 调用闭包
        closure.call()


执行上述代码 , 打印 Hello Closure! ;



直接 在 Closure 变量之后 , 写一个括号 , 也可以调用闭包 ;


     

// 定义闭包变量
        def closure = {
            println "Hello Closure!"
        }
       
        // 调用闭包
        closure()


执行上述代码 , 打印 Hello Closure! ;






二、闭包默认参数 it


闭包 Closure 默认可以 接收一个默认参数 , 该参数变量名称是 it ,


如果 不传入参数 , 则该 it 就为 null ,

如果 传入参数 , 该 it 变量就是该传入的参数值 ;

在 closure() 调用时 , 传入一个参数 , 会自动赋值给闭包中的 it 变量 ;


     

// 定义闭包变量
        def closure = {
            println it
        }
        // 调用闭包 , 并传入一个默认参数
        closure("Hello")


上述代码会打印 Hello ;






三、代码示例


代码示例 :


class Test {
    static void main(args) {
        // 定义闭包变量
        def closure = {
            println "Hello Closure!"
        }
       
        // I. 打印闭包类型
       
       
        // 打印闭包变量类型
        println closure.getClass()
       
        // II. 调用闭包
       
       
        // 调用闭包 1
        closure.call()
        // 调用闭包 2
        closure()
       
        // III. 闭包默认参数
       
       
        // 定义闭包变量
        def closure1 = {
            println it
        }
        // 调用闭包
        closure1.call("Hello")
        // 调用闭包 , 并传入一个默认参数
        closure1("Closure")
    }
}


执行结果 :


class Test$_main_closure1
Hello Closure!
Hello Closure!
Hello
Closure

【Groovy】闭包 Closure ( 闭包调用 | 闭包默认参数 it | 代码示例 )

上一篇:【Groovy】闭包 Closure ( 自定义闭包参数 | 自定义单个闭包参数 | 自定义多个闭包参数 | 闭包参数默认值指定 )


下一篇:【Groovy】map 集合 ( map 集合遍历 | 使用 map 集合的 find 方法遍历 map 集合 | 代码示例 )