Groovy:在条件满足时添加根闭包
对于这个简单的用例有点困惑:Groovy:在条件满足时添加根闭包,groovy,closures,Groovy,Closures,对于这个简单的用例有点困惑: 我只想在另一个闭包周围添加一个带条件的闭包。 目前,我只能成功做到这一点: if(condition) { my_root_closure { my_main_closure { do_stuff() } } } else { my_main_closure { do_stuff() } } 我希望在不重复my_main_闭包的情况下执行此操作。为了避免重复,您可以创建调用my_main_闭包的新闭包,并将其存储
我只想在另一个闭包周围添加一个带条件的闭包。
目前,我只能成功做到这一点:
if(condition) {
my_root_closure {
my_main_closure {
do_stuff()
}
}
} else {
my_main_closure {
do_stuff()
}
}
我希望在不重复my_main_闭包的情况下执行此操作。为了避免重复,您可以创建调用
my_main_闭包的新闭包,并将其存储在变量中:
def mmc = {
my_main_closure {
do_stuff()
}
}
if(condition) {
my_root_closure( mmc )
} else {
mmc()
}
我在想一些更不同的事情:def root={}如果(条件){root=my_root\u closure}root{my_main\u closure{do_stuff()}
@C3PO这也可以工作,但应该是def root={it()}
,,否则,当条件==false
时,闭包将不起任何作用。这是我的问题:)我将对此进行测试。Thks