ソートではありませんが、こんな方法もありますよ的なサンプルを置いておきます。
パフォーマンスはあまり良さそうではないので、要素数が少ない場合にしか使わないほうがいいですが。
swift
1struct Item {
2 var code: String
3 var name: String
4}
5
6var items: [Item] = [
7 Item(code: "A", name: "花子"),
8 Item(code: "B", name: "裕子"),
9 Item(code: "C", name: "真弓"),
10 Item(code: "D", name: "加奈子"),
11 Item(code: "E", name: "美幸"),
12]
13
14// 希望する順番
15let order = ["C", "A", "E", "D", "B"]
16
17// ソートじゃないけど
18items = order.map { code in items.first { $0.code == code }! }
19print(items)
追記:
順番をどこかに覚えておく必要があるのでしたら、Item構造体にorder変数なりで順番を保持しておけば、ソート時にはその値を使うだけなので楽だったりします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。