一、利用Groovy输出“Hello Groovy”
方式一:
//包名,其实也可以不要
package study
class GroovyGrammar {
public static void main(String[] args) {
print "Hello Groovy"
}
}
方式二:
class GroovyGrammar {
static void main(args) {
print "Hello Groovy"
}
}
方式三:
print "Hello Groovy"
二、数据类型与变量
package study
//def 定义变量的关键字
def x = 1
def y = 10.24
def z = "Groovy"
def b = true
println x.class //class java.lang.Integer
println y.class //class java.math.BigDecimal
println z.class //class java.lang.String
println b.class //class java.lang.Boolean
x='Hello Groovy'
y="Hello Groovy"
z='''Hello,
Groovy
'''
println x
println y
println z
输出结果:

使用明确的数据类型定义变量如下所示
package study
/**
* 数据类型
*/
class GroovyDataTypeGrammar {
public static void main(String[] args) {
int x = 5;
long y = 100L;
float a = 10.56f;
double b = 10.5e40;
BigInteger bi = 30g;
BigDecimal bd = 3.5g;
println(x);//5
println(x.class);//class java.lang.Integer
println(y);//100
println(y.class);//class java.lang.Long
println(a);//10.56
println(a.class);//class java.lang.Float
println(b);//1.05E41
println(b.class)//class java.lang.Double
println(bi);//30
println(bi.class)//class java.math.BigInteger
println(bd);//3.5
println(bi.class)//class java.math.BigInteger
}
}
三、运算符
主要介绍范围运算符def range = 5..10
println range
println range.get(2)
range.each {
println "当前下标${range.indexOf(it)},当前值为:${it}"
}
输出结果:

四、方法
int add(int a, int b = 10) {
return a + b
}
println add(10) //20
println add(2, 4) //6
//没有指定具体类型时,定义方法必须要加上def
def multiply(a, b) {
a * b //最后一行为返回值
}
//指定过具体类型时,定义方法可以不加上def
int subtraction(a, b) {
a - b
}
println multiply(4, 5) //20
println subtraction(2, 3) //-1