groovy入门

本文介绍了使用Groovy编程语言进行基本操作,包括变量声明、条件判断、循环、列表、映射、闭包等核心概念,并展示了如何实现分支语句、比较操作、对象创建和方法调用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

x=1
assert x==1
x=new Date()
println "The time now: ${x.toString()}"
//将语句嵌入字符串里面,很方便,注,单引号不行

mylist=[1,2,4,1.234]
println mylist[0]
//1
//列表,其实就是一个arrayList
println mylist.getClass()
//java.util.ArrayList
println mylist.size()
//4
scores=["Brett":100,"Pete":"Nothing","Bob":45.23]
println scores.Bob==scores["Bob"]
//true
//map既可以用下标的方式,也可以用取属性的方式
scores.Pete=100
assert scores['Pete']==100
println scores["Pete"]
//100
//按key赋值

emptylist=[]
println emptylist
assert emptylist==[] && emptylist.size()==0

emptymap=[:]
println emptymap
assert emptymap==[:] && emptylist.size()==0
//空的列表,和空的映射,表示方法不一样

who='lily'
if (who=='lily')
{
 println who
}
//分支语句和java一样
assert 'abcd'<='abcde'
//比较操作符已经重载

d=0.1
println d
println d.getClass()
//java.math.BigDecimal

10.times { i ->print "$i "}
//打印 0到9

//grooovy中,没有checked exception 和unchecked exception的区别

def clos={println "Hello,world"}
clos()
clos()
//闭包,就是一段代码

def sum={a,b-> println a+b }
sum(1,2)
sum('a','b')
//可以带参数
def printIt={println "$it"}
printIt('default it param')
//默认有一个叫it的参数

def sum1={a,Object[]args -> args.each{v->a+=v};println a}
sum1(1,2,3,4)
//可变参数,只需让最后一个参数的类型是Object[]

def local=10
printLocal={println local;return local}
assert printLocal()==10
local=11
assert printLocal()==11
//闭包中,可以应用作用域的其他变量

list=['a','c','b']
upper=list.collect({it.toUpperCase()})
assert upper==['A','C','B']
//closure作为方法的参数
println upper
newlist=[]
list.collect(newlist,{it+'1'})
assert newlist==['a1','c1','b1']
assert newlist.collect(){it[0]} == ['a','c','b']
//当闭包作为函数最后一个参数时,可以这样定义

//闭包示例

list=[1,2,3,4,10,15]
assert list.any(){it<2}
//肯定至少有一个元素小于2

assert list.every(){it > 0}
//所有元素大于0

assert list.find(){it>2} == 3
//第一个大于2的元素是3

assert list.findAll(){it>4} == [10,15]
//所有大于4的元素,就是10 和15

assert list.collect{++it} == [2,3,4,5,11,16]

list.each { print it}
//打印所有元素
println ""
list.eachWithIndex {it,idx -> println "$idx:$it "}
//打印所有元素和下标

10.times{println "10 times $it"}
//执行10次

0.step(10,2){println "5 times $it"}
//执行了5次,0,2,4,6,8


println "done."

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值