6

リストを並べ替えるにはどうすればよいですか?

['apple', 'banana', 'orange']

ユーザーがバナナを選択すると、リストは次のようになります

['banana', 'apple', 'orange']
4

4 に答える 4

8

それを行う別の方法:

def list = ['apple', 'banana', 'orange']
// get a reference to the selection (banana)
def pick = list.find { it == 'banana' }
// remove selection from the the list
def newList = list.minus(pick)
// add selection back at the beginning
newList.add(0, pick)
于 2014-04-12T12:29:07.980 に答える
5

2つのリストに分割して再結合します-文字列以外のリストに簡単に一般化できます:

List<String> moveToStart(List<String> original, String input) {
  original.split {it.equals(input)}.flatten()
}
于 2017-12-03T23:23:48.900 に答える
3
List pickToFirst(List list, int n) {
    return list[n,0..n-1,n+1..list.size()-1]
}

あなたの場合、

    def list = ['apple', 'banana', 'orange']
    def newList = pickToFirst(list, 1)
于 2012-12-24T07:36:22.863 に答える
0

私はそれを調べなければならなかったので、2022年の将来の年から答えます。+と-を使用します。

arr = ["lol", "rofl", "omg"]
selected = "omg"
println([selected] + (arr - selected))
于 2022-01-18T11:59:50.000 に答える