最近因工作需要学习了一下Groovy,将一些基本的知识点做个记录(适合小白读读)。由于初学,如果问题欢迎指正。
本篇讲一下基本数据类型和运算符
1 字符串
1.1 单引号表示静态字符串,
1.2 双引号表示动态字符串
1.3 连续三个双引号表示字符串段落(非常适合sql查询语句)
例子如下
def str = 'hello world'
//1.1单引号表示静态字符串,将会输入出${str}
println '${str}'
//1.2双引号哦表示动态字符串,将会输出hello world
println "${str}"
//1.3连续三个双引号,表示段落输出,将可以输出段落文字
println """
hello ,this is my text
this is 2nd text
this is 3rd text
"""
1.4 同时str中包含类似于JAVA的常用方法
例子如下
def str = 'hello world'
//1.4 常用方法演示
//输出11
println str.size()
//将输出hello
println str[0..4]
//输出dlrow olleh
println str.reverse()
2 数字
采用了BigDecimal类型,具有高精度
def x = 5
def y = 10
println x+y //结果:15
x = 5.5
println x+y //结果:15.5
println x.plus(y) //结果:15.5
3 类
与java类似,class没有限定符,构造器是map形式初始化
例子如下
class Student{
String name
String sex
int age
String toString(){
return "${name} is ${sex},${age} yeas old"
}
}
def s1 = new Student(name:'zhang')
println s1 //结果:zhang is null,0 yeas old
def s2 = new Student(name:'s2',sex:'男',age:10)
println s2 //结果: s2 is 男,10 yeas old
4 运算符
主要需要指出的是==
==比较值,这个是JAVA中的equals方法
.is() 对象比较,这个对应JAVA中的==方法
def s1 = "hello"
def s2 = new String("hello")
println s1==s2 // 结果:true
println s1.is(s2) //结果:false