2

私は groovy の初心者で、このコードを理解できないようです。このコードがどのように機能するか教えてください。

def list = [ [1,0], [0,1,2] ]
list = list.sort { a,b -> a[0] <=> b[0] }
assert list == [ [0,1,2], [1,0] ]

私が知っているのは、宇宙船演算子のために2行目が1の値を返す必要があるということですが、それは何に使用されますか? そして、これはどのような種類ですか?(gdk API には 6 つのソート方法があり、ここでどれが使用されているかはよくわかりません)

4

2 に答える 2

3

sortコードスニペットでは、コンパレータ引数メソッド呼び出しを使用します-http://groovy.codehaus.org/groovy-jdk/java/util/Collection.html#sort(java.util.Comparator)を参照してください

したがって、独自のコンパレータを使用してコレクションを並べ替えています。これで、コンパレータは単に内部コレクションの最初の要素を使用して、外部コレクションの順序を決定します。

于 2012-06-11T13:43:41.153 に答える