📄 defaultparamclosuretest.groovy
字号:
class DefaultParamClosureTest extends GroovyTestCase { void testDefaultParameters() { // Default parameters working for closures def doSomething = { a, b = 'defB', c = 'defC' -> println "Called with a: ${a}, b ${b}, c ${c}" return a + "-" + b + "-" + c } def value = doSomething("X", "Y", "Z") assert value == "X-Y-Z" value = doSomething("X", "Y") assert value == "X-Y-defC" value = doSomething("X") assert value == "X-defB-defC" shouldFail { doSomething() } } void testDefaultTypedParameters() { // Handle typed parameters def doTypedSomething = { String a = 'defA', String b = 'defB', String c = 'defC' -> println "Called typed method with a: ${a}, b ${b}, c ${c}" return a + "-" + b + "-" + c } def value = doTypedSomething("X", "Y", "Z") assert value == "X-Y-Z" value = doTypedSomething("X", "Y") assert value == "X-Y-defC" value = doTypedSomething("X") assert value == "X-defB-defC" value = doTypedSomething() assert value == "defA-defB-defC" }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -