Groovy学习笔记(2)-基本语法
发布时间:2020-12-14 16:42:56 所属栏目:大数据 来源:网络整理
导读:声明一个变量: def age=25 声明一个方法: def someMethod(para1,para2=0,pare3=0){ def total=para1+para2+para3 //;分号省略,推荐带上。 total //或者 return total} 调用方法: someMethod(5,6) //3个参数可只传2个,第三个参数采用默认值 列表List是一
|
声明一个变量: def age=25 声明一个方法: def someMethod(para1,para2=0,pare3=0){
def total=para1+para2+para3 //;分号省略,推荐带上。
total //或者 return total
}
调用方法: someMethod(5,6) //3个参数可只传2个,第三个参数采用默认值 列表List是一种用来存储数据项集合的数据结构,可以存放不同类型的值,可以用+连接2个列表,或-操作符删除元素 def list=[11,13,"Tom",17]
//list的加法
list+["Tom"]
//list的减法
list-[13]
//添加元素
list<<"hello"
list.add("world")
//去除重复元素
list.unique()
//集合反转
list.reverse()
//排序
list.sort()
//list求和
list.sum()
//取出最大值和最小值
list.max()
//元素筛选
def arr5=[3,8,9,10,5,6]
println arr5.grep{
it>6
}
//求交集
def arr2=["北京","上海"]
def arr3=["上海","宁波"]
println arr2.intersect(arr3)
//join方法
def array=[1989,12,25]
println array.join("-")
println array[1,2].join("-")
映射Map是一种引用对象的无序集合,也就是大家熟悉的组合数组、词典、表格、散列 //初始化一个集合
def students=['Jack':24,'Tom':22]
//定义一个空集合
def m=[:]
//设置集合的内容,其中name,age为key
m.name="Lucy"
m.age=16
m.height=165
//这种方式也可以向map中添加元素
m.put("sex","女")
//取得集合的内容(单个)
println m.get("name")
m.each { it ->
println it.key+","+it.value
}
//删除集合元素
m.remove("height")
println m.get("sex")
println m.get("height")
范围Range是表达式特定虚列值的一种简略形式 def range1=100...200 //包含边界
def range2=100...<200 //不包含边界
//是否包含一个元素
assert (0..10).contains(5) == true
//集合大小
assert (0..<10).size() == 10
//获取指定范围内的元素
assert [22,33,44,55,66].grep((21..50)) == [22,44]
//迭代闭包
def str = ''
(9..5).each{element->
str+=element
}
println(str) -> "98765"
//在switch case语句中使用
age = 36
switch (age){
case 10..26:
rate =0.05;break
case 27..36:
rate = 0.06;break
case 37..46:
rate =0.07;break
default:
throw new IllegalArgumentException()
}
assert rate==0.06
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
