{ [closureParameters -> ] statements }
{ item++ } (1) { -> item++ } (2) { println it } (3) { it -> println it } (4) { name -> println name } (5) { String x, int y -> (6) println "hey ${x} the value is ${y}" } { reader -> (7) def line = reader.readLine() line.trim() }
def listener = { e -> println "Clicked on $e.source" } (1) assert listener instanceof Closure Closure callback = { println 'Done!' } (2) Closure<Boolean> isTextFile = { File it -> it.name.endsWith('.txt') (3) }