Swift Dictionaryのグループ化(グルーピング)が便利で簡単

Swift Swift
Swift

プログラミングしていると、配列の要素をグループ毎に分けたい時があります。
日付単位でグルーピングしたり、アイテムが所属するカテゴリー毎にグルーピングしたり・・・

そういった時に簡単にグループ化(グルーピング)できるのが、Dictionaryを使ったやり方です。

ソース

var userItems :[(id: Int, job: String)] = []
            
userItems.append((id: 1, job: "employee"))
userItems.append((id: 2, job: "employee"))
userItems.append((id: 3, job: "student"))
            
let group: [String: [(id: Int, job: String)]] = Dictionary(grouping: userItems, by: { $0.job })

上記例のように、userItemsという配列があり、その配列をjob毎にグループ分けしたい。
というような時に、Dictionaryを使ってグルーピングする事ができます。

グルーピングされた配列は、指定した要素毎(今回であれば”job”の値)にまとめられます。

コメント

タイトルとURLをコピーしました