対象: 配列をソートする(Swift)Arrayのsortメソッドを使うと、その配列自身をソートすることができる。対象の配列は文字列であっても数値であっても良い。sortメソッドに渡す比較演算子(より厳密に言うと演算子関数)によって昇順、または降順を選択できる。例えば、sortメソッドに比較演算子(<)を渡すと配列は昇順にソートされる。 // sortメソッドは配列そのものをソートする var stationery = ["stapler", "pen", "scissors"] stationery.sort(by: <) for s in stationery { print(s) } 上記のコードの実行結果は以下になる。 pen scissors stapler コードの可読性を良くしたいなら、sortメソッドに比較演算子でなく、以下のようにクロージャを渡しても良いだろう。 stationery.sort { $0 < $1 } // ↓でも同じ // stationery.sort(by: { $0 < $1 }) // stationery.sort() sortメソッドではなくsortedメソッドを使うと、その配列自身を複製してソートした配列を得ることができる。つまり、sortedメソッドを使った場合には、元の配列には何ら影響がなく、下記の例のscores配列はletで宣言できる。 // sortメソッドはソートした新しい配列を返す let scores = [100, 300, 200] for s in scores.sorted(by: <) { print(s) } 100 200 300 (2015/02/16) () Swift 3.0対応。
Copyright© 2004-2019 モバイル開発系(K) All rights reserved.
[Home]
|