概述
Groovy Tip 17 “*.”操作符
我们都知道,Groovy语言对集合做了很多的简化,如each、collect等等。但是,Groovy语言觉得这些还不够,它要继续给我们提供更多的简化操作。今天我们要谈到的“
*.”,就是其中的一个。
“
*.”操作符到底有什么用?我们还是从一个简单的例子谈起。
def
list = [
'abc'
,
'yyyy'
,
'1234467'
]
def
sizes = list*.
size
()
sizes.
each
{
println
it
}
打印的结果为:
3
4
7
通过上面的例子,我们可以知道,“
*.”操作符的操作对象是一个List对象,如上面的list对象;然后它的结果也是一个List对象;最后还有一个size()方法,是在取元素的长度。
通过结果,我们知道,我们的“
*.”操作符首先对list对象的每一个元素进行size()运算,然后把运算得到的每一个结果作为元素组成一个新的list对象sizes。
可以知道,上面的“
*.”操作符的运算相当于下面的代码:
def
list = [
'abc'
,
'yyyy'
,
'1234467'
]
def
sizes = list.
collect
{
it.
size
()
}
sizes.
each
{
println
it
}
同样的结果,但上面的代码比起“
*.”操作符就麻烦多了。知道了“
*.”操作符的作用,我们就可以对它进行更多的应用。
假设我们有如下的一个GroovyBean:
class
Empl
{
String name
int
age
}
我们现在有一个Empl对象为元素的List对象:
def
list = [
new
Empl(name:
'Tom'
,age:
12
),
new
Empl(name:
'Alice'
,age:
15
),
new
Empl(name:
'Rose'
,age:
20
)]
现在,我们要取得每一个元素的
age
,组成一个新的
List
对象:
def
sizes = list*.age
下面我们来测试:
sizes.
each
{
println
it
}
结果为:
12
15
20
最后
以上就是幸福航空为你收集整理的Groovy Tip 17 “*.”操作符的全部内容,希望文章能够帮你解决Groovy Tip 17 “*.”操作符所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复