Grovvy
Groovy是什么?
为什么在介绍Gradle之前需要基本了解Groovy? 测试环境:IDEA-TOOL-GROOVY TOOL基本类型使用
def 可省略 复杂类型使用
ListSetMap 方法闭包
一:Groovy是什么?
groovy 出色的、绝妙的
Grovvy是一种基于JVM的动态语言,根据自己的编译器获得符合JVM规范的字节码(在JVM上运行),是一种DSL(Domain Specific Language),与之对应Java是一种GPL(General Purpose Language),能够与Java很好的结合;
Grovvy依赖JDK中的JVM来运行自己的字节码。
为什么在介绍Gradle之前需要基本了解Groovy?
→ Gradle中.gradle配置文件语法就是Groovy的语法。
二:基本类型使用
a1
= 10
a2
= 9999999
a3
= 1.02
println a1
println a2
println a3
三:复杂类型使用
list
= [1,2,3,4,"hello"]
println list
println list
.get(0)
list
<< "world"
for (i
in list
) {
println i
}
println list
set
= [1,2,3,4,4,4,4,5,5,5,1].toSet()
set1
= [1,2,3,4,4,4,4,5,5,5,1] as Set
println set
println set1
println set
instanceof Set
println set1
instanceof Set
map
= ["1":"hello","2":"world"]
println map
println map
.get("1")
map
."3" = "abc"
println map
for (i
in map
) {
println i
}
for (i
in map
.keySet()) {
print i
+" "
println map
.get(i
)
}
四:方法
def fun1(a
,b
,c
=10){
println a
+b
+c
}
fun1(25,1)
fun1(25,1,9)
1> 方法只有一个参数时,调用可以连括号都给省掉
dependencies
= {
println
"hello"
}
dependencies()
def fun(Closure closure
){
println
"AAA"
closure()
println
"BBB"
}
fun(dependencies
)
fun dependencies
2> 函数作为参数
def fun1(fun2
){}
def fun2(int a
,int b
,int c
){
println a
+b
+c
}
fun1
fun2(1,2,3)
3> 含有多个参数的方法
def fun(a
,b
,c
){
println a
+b
+c
}
fun
1,2,2
五:闭包
dependencies
= {
println
"hello"
}
dependencies()
def fun(Closure closure
){
closure()
}
fun(dependencies
)
1> 当函数参数只有一个且为闭包时,调用该方法可以进行简化
def fun(Closure closure
){
println
"AAA"
closure()
println
"BBB"
}
fun
{
println
123
}