2018-11-11
参考自《Android Gradle权威指南》
先来回顾一下groovy的一些基础语法
-
调用方法的时候,圆括号是可以省略的,比如
def method1(int a, int b){ println a+b } task invokeMethod <<{ method1(1,2) method1 1,2 }
-
定义方法时,return是可以不写的,比如
def getMaxNumber(int a, int b){ if(a>b){ a }else { b } } task printMethodReturn <<{ def max1 = getMaxNumber 1,2 def max2 = getMaxNumber 3,5 println "max1 :${max1},max2:${max2}" }
执行
gradle printMethodReturn
可以看到输出max1 :2,max2:5
-
代码块是可以作为参数传递的,比如:
//最直接的写法 numList.each({ println it}) //groovy规定,如果方法的最后一个参数是闭包,可以放大方法外面 numList.each(){ println it } // 还规定了,如果出现上面的情况,圆括号也是可以省略的 numList.each{ println it }
是不是和python很像。
JavaBean
在Java中为了获取、修改属性的值,通常需要通过生成
getter/setter
方法,但是在groovy
中我们可以这样class Person{ private String name public int getAge(){ return 12