====== Groovy Closure ====== * [[http://examples.javacodegeeks.com/core-java/groovy-closure-example-2/|Groovy Closure Example]] * [[https://dzone.com/articles/functional-programming-groovy|Functional Programming with Groovy]] * [[http://mrhaki.blogspot.kr/2009/09/groovy-goodness-using-inject-method.html|Groovy Goodness: Using the Inject Method]] : ''inject'' is ''reduce'' * [[https://tedvinke.wordpress.com/2015/08/16/groovy-weekend-collections-injecting-or-map-reduce/|Groovy Weekend – Collections: Injecting or Map Reduce]] ====== Method Reference ====== * [[http://mrhaki.blogspot.com/2009/08/groovy-goodness-turn-methods-into.html|Groovy Goodness: Turn Methods into Closures]] public class JavaObject { public static void javaSays(final String s) { System.out.println("Java says: Hello " + s + "!"); } } // Groovy method to convert to closure. def groovySays(s) { "Groovy says: Hello ${s}!" } // Use .& syntax to convert method to closure. names.each(this.&groovySays) // Convert Java method to closure and use it. def javaSays = JavaObject.&javaSays names.each javaSays