Groovy Tip 6 集合类的简化操作
发布时间:2020-12-14 17:00:24 所属栏目:大数据 来源:网络整理
导读:????????????????????? Groovy Tip 6 集合类的简化操作 ? Groovy语言对Java语言的简化在集合类上是表现最为突出的,那个著名的each方法就不需要我多说了,因为“地球人都知道”。 一. 赋初值的简化 对于List对象,在Java语言中是这样赋初值的: ?????? List
?????????????????????
Groovy Tip 6 集合类的简化操作
?
Groovy语言对Java语言的简化在集合类上是表现最为突出的,那个著名的each方法就不需要我多说了,因为“地球人都知道”。
一.赋初值的简化
对于List对象,在Java语言中是这样赋初值的:
?????? List list =
new
ArrayList();
??????
?????? list.add(
"a"
);
?????? list.add(
"b"
);
??? list.add(
"c"
);
?
十分的繁琐,在Groovy语言里只需要这样赋初值:
List list = [
'a'
,
'b'
,
'c'
]
?
这简直是太简单了。
?
同样,对于Map对象,在Java语言中是这样赋初值的:
?????? Map map =
new
HashMap();
?????? map.put(
"name"
,
"tom"
);
?????? map.put(
"age"
,
"4"
);
??? map.put(
"addr"
,
"shenzhen"
);
?
同样是相当的繁琐,但是在
Groovy
语言里:
Map map = [
'name'
:
'tom'
,
'age'
:
'4'
,
'addr'
:
'shenzhen'
]
?
同样是很简单的。
?
二.取值的简化
在Java语言中,对List对象取值如下:
list.get(0)
?
但是在
Groovy
语言中,
List
对象可以像数组一样取值:
??? List list = [
'a'
,
'c'
]
???
println
list[
0
]
?
在
Java
语言中,对
Map
对象的取值如下:
?????? Map map =
new
HashMap();
?????? map.put(
"name"
,
"4"
);
?????? map.put(
"addr"
,
"shenzhen"
);
??????
??? System.
out
.println(map.get(
"name"
));
?
在
Groovy
语言中,
Map
对象可以这样取值:
??? Map map = [
'name'
:
'tom'
,
'addr'
:
'shenzhen'
]
???
println
map[
'name'
]
?
还可以这样取值:
??? Map map = [
'name'
:
'tom'
,
'addr'
:
'shenzhen'
]
???
println
map.name
?
?
三.给集合类增加元素
在Java语言中,给List对象增加一个元素如下:
?????? List list =
new
ArrayList();
?????? list.add(
"1"
);
?????? String[] strs = (String[])list.toArray(
new
String[0]);
??????
??? list.add(
"a"
);
?
是的,使用
add
方法。
而在
Groovy
语言中,你只需使用如下方法:
??? List list = [
'a'
,
'c'
]
???
??? list<<
'd'
???
println
list
?
是的,我们使用“
<<
”符号给
List
对象增加元素。
?
在
Java
语言中,给
Map
对象增加一个元素如下:
?????? Map map =
new
HashMap();
?????? map.put(
"name"
,
"shenzhen"
);
??????
?????? System.
out
.println(map.get(
"name"
));
??????
??? map.put(
"abc"
,
"abc"
);
?
不错,还是使用
put
方法。
而在
Groovy
语言中,我们只需这样做:
??? Map map = [
'name'
:
'tom'
,
'addr'
:
'shenzhen'
]
???
??? map[
'abc'
] =
'abc'
println
map
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- [bigdata-076] maven+mybatis+mysql 数据库 myba
- 数据分析挖掘干货大放送啦!大放送啦!大放送啦!
- perl – ‘子程序条目中的宽字符“ – UTF-8编码
- [VB.NET]请问,VB和VB.net有啥区别和联系?
- UVa:10519 - !! Really Strange !!
- 在Delphi中初始程序加载后更改一个TStatusPanel的
- perl输入,排序,输出,一行代码解决所有的问题
- Inno Setup使用上的几个问题
- Delphi 与 DirectX 之 DelphiX(27): TDIB.Spray(
- VB C# listview 中的数据导出到excel 文件
热点阅读