📄 closureusingoutervariablestest.groovy
字号:
/** * @author <a href="mailto:james@coredevelopers.net">James Strachan</a> * @version $Revision: 1.12 $ */class ClosureUsingOuterVariablesTest extends GroovyTestCase { void testUseOfOuterVariable() { def x = 123 def y = "hello" def closure = { i -> println("x ${x}") println("y ${y}") println("i ${i}") assert x == 123 assert y == 'hello' } closure.call(321) } /* TODO: is this a valid test case? void testInnerVariablesVisibleInOuterScope() { closure = { z = 456 } closure.call(321) assert z == 456 } */ void testModifyingOuterVariable() { def m = 123 def closure = { m = 456 } closure.call(321) assert m == 456 } void testCounting() { def sum = 0 [1, 2, 3, 4].each { sum = sum + it } assert sum == 10 } void testExampleUseOfClosureScopes() { def a = 123 def b def c = { b = a + it } c(5) println(b) assert b == a + 5 } void testExampleUseOfClosureScopesUsingEach() { def a = 123 def b [5].each { b = a + it } assert b == a + 5 }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -