Groovy Tip 18 Groovy的一些Map
在Groovy语言中,Map是一个大的家族,除了我们常用的HashMap以外,还有很多其他的形形色色的Map。当然,这些Map的存在是因为它们有不同于HashMap的地方。现在,我们就来看看其中的两种Map。
一.
TreeMap
def
map = [
3
:
'c'
,
2
:
'b'
,
1
:
'a'
,
5
:
'e'
,
4
:
'd'
]
def
tm =
new
TreeMap(map)
println
tm
运行的结果为:
[1:"a",2:"b",3:"c",4:"d",5:"e"]
def
map = [
3
:
'c'
,
4
:
'd'
]
def
com = [compare:
{
a,b ->
a>b?-
1
:
1
def
tm =
new
TreeMap(com)
tm.putAll(map)
println
tm
[5:"e",1:"a"]
可以看到,我们定义的比较器是倒序的,所以我们得到的结果也是倒序的。
二.
ObservableMap
def
om = [:]
as
ObservableMap
om.addPropertychangelistener({
evt ->
println
"add value: ${evt.newValue}"
om.
"test"
=
'eee'
add value: eee
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。