私は初心者です。質問があります。リスト[3、2、8、5、44、9]があります。を作るにはどうすればよいdef SortMe(sequence)
ですか?
結果を [2, 3, 5, 8, 9, 44] にしたい
私は初心者です。質問があります。リスト[3、2、8、5、44、9]があります。を作るにはどうすればよいdef SortMe(sequence)
ですか?
結果を [2, 3, 5, 8, 9, 44] にしたい
groovyのCollectionにsort メソッドが必要です。楽しいオプションがたくさんあります。
def list = [2, 5, 7, 1, 4, 3].sort()
println list
WordPress へようこそ。気に入っていただければ幸いです。
別の解決策は、リストを使用する代わりに TreeSet を使用することです
def list = [10,10,1] as TreeSet
これは出力です: 1,10
順序付けされた、重複のないリストを取得します。
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
sort メソッドに渡すfalse
と、新しいソートされたコレクションが返され、元の Collection は変更されません。