我是初学者。我有个问题。
列表[3,2,8,5,44,9]。
如何制作def SortMe(sequence)
?
我希望结果为[2,3,5,8,9,44]
答案 0 :(得分:3)
你需要在groovy中Collection上的排序方法。它有很多有趣的选择。
def list = [2, 5, 7, 1, 4, 3].sort()
println list
欢迎来到groovy。希望你喜欢它。
答案 1 :(得分:0)
kingObergers对如何对集合进行排序是正确的......
但是,如果要将其包装在函数中,可以执行以下操作:
Collection sortMe( Collection a ) {
a.sort( false )
}
def listA = [3, 2, 8, 5, 44, 9]
def listB = sortMe( listA )
assert listA == [3, 2, 8, 5, 44, 9] // Original is unchanged
assert listB == [2, 3, 5, 8, 9, 44] // Sorted list is returned from sortMe
将false
传递给sort方法意味着将返回一个新的已排序集合,并且原始Collection将保持不变
答案 2 :(得分:0)
另一种解决方案是使用TreeSet而不是使用列表
def list = [10,10,1] as TreeSet
这是输出:1,10
你得到一份有序的清单,没有重复。