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

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

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

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

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

1
2
3
4
arrayInt.sort {$0 < $1}
 
print(arrayInt)
// [1, 2, 4, 9]

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

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

1
2
3
4
arrayInt.sort {$0 > $1}
 
print(arrayInt)
// [9, 4, 2, 1]

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

1
2
3
4
5
var arrayString: [String] = ["a", "c", "b"]
arrayString.sort {$0 > $1}
 
print(arrayString)
// ["c", "b", "a"]