根据地图值对地图的ArrayList进行排序

Mic*_*ich 1 sorting groovy arraylist

比方说,我有这样ArrayListMap小号

def map1 = [key1:value1, key2:value2, key3:value3]
def map2 = [key1:value1, key2:value2, key3:value3]
def map3 = [key1:value1, key2:value2, key3:value3]
def maps = [map1, map2, map3]
Run Code Online (Sandbox Code Playgroud)

我想根据value3地图对这个列表进行排序。

假设我在Groovy工作,该怎么做?

the*_*th_ 6

您可以在Groovy中创建自己的自定义排序比较器:

maps.sort { a, b -> a.key3 <=> b.key3 }
Run Code Online (Sandbox Code Playgroud)

这将根据每个地图的值对地图进行排序key3