Swiftのある問題集を解いていた中で使う場面があったので備忘録。

以下のInt型配列を例に昇順・降順で並び替える方法を紹介する。

var arrayInt: [Int] = [9, 2, 1, 4]

昇順(0, 1, 2 …)でソート

昇順は0から1にへ大きい数字に向かって順にソートされるので、{ $0 < $1 }このような表記となる。

arrayInt.sort {$0 < $1}

print(arrayInt)
// [1, 2, 4, 9]

降順(… 2, 1, 0)でソート

降順の場合は小さい数字に向かってソートされるので、{ $0 > $1 }となる。

arrayInt.sort {$0 > $1}

print(arrayInt)
// [9, 4, 2, 1]

なお、文字列など別のデータ型でもこの記法を使うことができる。

var arrayString: [String] = ["a", "c", "b"]
arrayString.sort {$0 > $1}

print(arrayString)
// ["c", "b", "a"]