如何按相反顺序按2个字段对列表排序?我正在尝试按名称(升序)和年龄(降序)对列表进行排序。我尝试过:
list.sort { -it }
用于降序,
list.sort { it }
代表升序,但没有考虑两个不同的字段。可以像这样对列表进行排序吗?
答案 0 :(得分:2)
类似
def list = [ [name:1, age:2], [name:2, age:10], [name:1, age:20] ]
list = list.sort{ a, b -> a.name <=> b.name ?: b.age <=> a.age }
assert [[name:1, age:20], [name:1, age:2], [name:2, age:10]] == list